This is a final year project of graduating students of Adama Science and Technology University in Adama, Ethiopia.
It is an multi-sector dynamic schedule management and progress tracking system for use with many governemnt and private organizations.
# clone from github
git clone https://github.com/ASTU-Final-Year/final-project.git
cd final-project
# install dependencies then create local folders and initialize database
bun i# run drizzle studio to view and manage database for development using sqlite
pnpm db:studio:sqlite# run drizzle studio to view and manage database for production using sqlite
pnpm db:studio# start the development backend and frontend servers
bun dev
bun dev:backend # backend only
bun dev:frontend # frontend only# start the production backend and frontend servers
bun build
bun start
bun start:backend # backend only
bun start:frontend # frontend onlyFinally open http://localhost:3000 with your browser.
- Next.js 16 (React 19)
- Tailwind CSS
- Shadcn
- Arktype
- React Hook Forms
- Recharts
-
Bun runtime
-
Typescript for backend and javascript for frontend.
-
Drizzle ORM
-
SQlite for development and PostgreSQL for production
- Node.js (v18+)
- Bun — https://bun.sh
- PostgreSQL (v14+)
# NODE_ENV=production
# PROD_DATABASE=1
# Server
URL=http://localhost
EMAIL_DOMAIN=servesyncplus.et
SMTP_EMAIL=your-email@example.com
SMTP_PASSWORD=your-app-password
## Backend
BACKEND_PORT=4000
JWT_AUTH_KEY=fSuwkiibZGgROT9gukjqBDNi-u3aRo3jhruNBvK4gfyaZfyjDzlzZY3VAexry-xa
JWT_AUTH_ALG=HS256
JWT_EMPLOYEE_HIRE_KEY=fSuwkiibZGgROT9gukjqBDNi-u3aRo3jhruNBvK4gfyaZfyjDzlzZY3VAexry-xa
JWT_EMPLOYEE_HIRE_ALG=HS256
SALT_ROUNDS=10
## Frontend
PORT=3000
# DB
PG_DATABASE_URL="postgresql://postgres:postgres@localhost:5432/servesyncplus"
SQLITE_DATABASE_URL=".local/dev.db"