Welcome to the official repository for the University of Vavuniya Hostel Residences Management System! This project aims to simplify the hostel accommodation process for students by allowing them to swap between hostels, apply for new hostels, and manage ward accommodations seamlessly.
This system is built to facilitate the hostel management process at the University of Vavuniya (UWU), Sri Lanka. It provides a streamlined way for hostelers to manage their accommodations.
- Swap between hostels
- Apply for new hostels
- Manage ward accommodations
- Role-based authentication using Clerk provider from Clerk.com
- Interactive maps using OpenLayers
- Node.js
- TypeScript
- Express.js
- PostgreSQL with Prisma ORM
- React
- Next.js 14
- TypeScript
- open-layers
- Node.js
- npm or yarn
- PostgreSQL
- Clone the repository:
git clone https://github.com/nishansanjuka/hostal-management-system-client.git
- Navigate to the project directory:
cd hostal-management-system-client
- Install dependencies:
npm install # or yarn install
- Create a
.env
file and configure your environment variables:NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY="" CLERK_SECRET_KEY="" WEBHOOK_SECRET="" NEXT_PUBLIC_CLERK_SIGN_IN_URL="" NEXT_PUBLIC_CLERK_SIGN_IN_URL="" NEXT_PUBLIC_CLERK_SIGN_UP_URL="" CLERK_SIGN_IN_FORCE_REDIRECT_URL="" CLERK_SIGN_UP_FORCE_REDIRECT_URL="" CLERK_BASE_URL="" API_BASE_URL="" DATABASE_URL=""
- Start the development server:
npm run dev # or yarn dev
The backend API is hosted on Render and Korio platforms. Below are some of the key endpoints:
POST /sign-in
- Sign in a userPOST /sign-up
- Sign up a new user
For a complete list of endpoints and their usage, refer to the Backend API Repo.
- Navigate to the "Swap Hostel" page.
- Select the current hostel and the desired hostel to swap.
- Submit the swap request.
- Navigate to the "Hostels" page.
- Fill in the required details and submit the application.
We welcome contributions from the community! If you'd like to contribute, please follow these steps:
- Fork the repository.
- Create a new branch (
git checkout -b clerk-auth
). - Make your changes.
- Commit your changes (
git commit -m 'Add new feature'
). - Push to the branch (
git push origin clerk-auth
). - Open a Pull Request.
This project is licensed under the MIT License. See the LICENSE file for more details.
Happy coding!