Important !! Project is shutting down as it was just a side project.
EduNotify is a web application designed to provide a notice board feature for educational institutions. It allows users to manage notices with role-based access control. The application leverages Permit.io, Clerk Authentication, Next.js, Tailwind CSS, and Shadcn-UI technologies to deliver a seamless and intuitive user experience.
- Notice Board Management: Users can create, edit, and delete notices on the notice board.
- Role-Based Access Control: Different user roles (e.g., principal, teacher, student) have different permissions to manage notices.
- Authentication: Secure authentication and user management powered by Clerk Authentication.
- Real-Time Updates: Seamless updates and notifications when new notices are added or existing ones are modified.
- Responsive Design: Fully responsive design ensuring a consistent experience across devices.
- Permit.io: Provides fine-grained access control with a flexible permission system.
- Clerk Authentication: Handles user authentication and session management.
- Next.js: React framework for building server-rendered web applications.
- Tailwind CSS: Utility-first CSS framework for rapidly building custom designs.
- Shadcn-UI: UI component library for React, offering a collection of customizable components.
-
Clone the repository:
git clone https://github.com/yourusername/edunotify.git
-
Navigate to the project directory:
cd edunotify
-
Install dependencies:
bun install
-
Set up environment variables:
Create a
.env
file in the root directory and add the required environment variables. Refer to the.env.example
file for the list of variables needed. -
Initialize the database:
npx prisma generate
-
Run the development server:
bun run dev
-
Open your browser and navigate to
http://localhost:3000
to view the application.
- Sign up or log in with your credentials.
- Navigate to the school.
- Depending on your role, you can perform actions such as creating, editing, or deleting notices.
- Explore other features and functionalities tailored to your role.
Contributions are welcome! If you have any ideas, suggestions, or improvements, feel free to open an issue or submit a pull request.
This project is licensed under the MIT License.
- Priyanshu Verma (@priyanshuverma-dev)