GeekBlock challenge
Developed by:
Barrage, Zagrebacka 1, HR-31000 Osijek
Features
- Play GeekBlock directly in your web browser.
- Record your scores and track your progress.
- User-friendly interface for seamless gaming experience.
Installation
- Clone this repository to your local machine.
- Navigate to the project directory.
- Install dependencies using npm:
npm install
- Set up your PostgreSQL database and configure the connection details in the
knexfile.js
file. - You'll need PostgreSQL for the persistence of data, you can use
docker compose
:
docker compose up -d
Usage
- Run migrations
npm run migrate
- Start the application:
npm run start
- Access the application in your web browser at
http://localhost:3000
. - Register for an account or log in with your existing credentials.
- Play GeekBlock and start recording your scores!
High scores
You can view a list of High scores at http://localhost:3000/list
File Structure
The project follows a structured MVC (Model-View-Controller) architecture with separation of concerns for easy maintenance and scalability.
- controllers: Contains the controller files responsible for handling incoming requests and sending responses.
- routes: Specifies the routes and their corresponding controller methods.
- services: Implements business logic and interacts with the database.
- views: Includes the HTML templates for rendering the user interface.
- public: Contains static assets such as CSS stylesheets and client-side JavaScript files.
Database Schema
The application uses a PostgreSQL database to store user information and scores. The database schema consists of the following tables:
- users: Stores user details including email and unique hash.
Contributing
Contributions are welcome! If you encounter any bugs or have suggestions for improvement, please submit an issue or open a pull request.
License
This project is licensed under the MIT License.
Status | Released |
Platforms | HTML5 |
Publisher | |
Release date | Apr 01, 2024 |
Author | barragehq |
Genre | Educational |
Tags | Retro, Singleplayer |
Code license | MIT License |
Leave a comment
Log in with itch.io to leave a comment.