Bokhjelp is an online book reader that allows seemless translation as you read. It contains a collection of Norwegian books that can be read with as much assistance as you need. Translate one tricky word at a time, or entire sentences.
- Frontend: React, TypeScript, Chakra UI
- Backend: Node.js, Express, TypeScript
- Database: PostgreSQL
- DevOps: Docker
- Testing and Quality Assurance: Jest
Hosted on an Oracle Compute Instance and accessable here: https://bokhelp.me
GitHub actions autodeploys to the instance. The process is managed using pm2. When manually connecting to the instance through ssh these commands may be useful:
List processes: pm2 list
Stop process: pm2 stop bokhjelp
Start process: pm2 start npm --name "bokhjelp" -- run start
Hosted on Vercel and accessable here: https://norsk-bokleser.vercel.app
Hosted on Supabase
Ensure you have Docker installed on your system to simplify the setup process.
-
Clone the repository and navigate to the backend directory:
git clone https://github.com/kiiskila/norsk-bokleser.git cd norsk-bokleserr/backend
-
Install dependencies:
npm install
-
Generate the prisma schema:
npx prisma generate
-
Run the migrations:
npm run local:db:migrate
OR to reset the database
npm run local:db:rebuild
-
Run the seeder:
npx prisma db seed
Navigate to the frontend directory:
cd ../frontend
Install dependencies:
npm install
To run the application within docker:
docker-compose up -d
This will launch the frontend application on http://localhost:5173
.
To run the tests:
cd backend
npm run test
Contributions are what make the open-source community such a fantastic place to learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request