Okul is a web application that allows users to create an account, receive email confirmations, list schools, and add them to their favorites. The backend of the application is built using Golang and Fiber for the server, and it uses Postgres as the database. The frontend is developed with React.
Before you start, make sure you have the following installed on your system:
- Clone the repository:
git clone https://github.com/k61b/okul.git
cd okul
-
Create a config.dev.yml configuration file in the config directory like config.prod.yml
-
Install dependencies:
# Backend (Golang/Fiber)
go mod tidy
# Frontend (React)
cd frontend
npm install
The project uses a YAML configuration file (config.dev.yml) for environment-specific settings. Make sure to provide appropriate values for the keys in this file, especially the database connection details, JWT secret, and email credentials.
-
Start the Postgres database.
-
Migrate the database schema:
# Manually run the migration file
- Start the Golang server:
make run
In a separate terminal window:
cd client
npm run dev
The frontend will be accessible at http://localhost:3000.
- User authentication with email confirmation.
- Listing schools with details.
- Adding schools to favorites.
- Responsive design for both desktop and mobile.
Contributions are welcome! Feel free to open an issue or create a pull request.