Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/neofoxxo/high-street-gym

A gym website with a Blog and XML functionality. Built with Next.js, MySQL, React, Tailwind CSS, and DaisyUI.
https://github.com/neofoxxo/high-street-gym

daisyui e2e-testing mysql next-auth nextjs13 react unit-testing xml-parsing

Last synced: about 2 months ago
JSON representation

A gym website with a Blog and XML functionality. Built with Next.js, MySQL, React, Tailwind CSS, and DaisyUI.

Awesome Lists containing this project

README

        

# High Street Gym

The Mobile Hour is a dynamic gym website built with Next.js 13, React, Tailwind CSS, DaisyUI, and MySQL. It features a fully functional admin page where the class schedule and admin users can be updated with XML documents.

Timespent: 37 hours 3 mins

## Features
* 🔒 Full customer and admin authentication with encryption
* ✍️ Customers can create and view blog posts
* ✅ Full client-side form validation
* 📱 Fully responsive on mobile
* 🤩 Modern corporate design
* 🛍️ Customers can book classes
* 🔍 View classes on a 7 day timetable
* 🛡️ Middleware to prevent customers or unauthenticated users from accessing the Admin page
* 👤 Admins can add new gym classes and new admin users with XML documents

## How To Run It

To run this on your local machine, you will need to have the latest version of Node.js installed and access to a MySQL database.

1. Clone the repository to your local machine
2. Import the database.sql file to phpMyAdmin or your MySQL server
5. Open your terminal and run `npm install`
6. Then run the `npm run start` command
7. Access the website on port 3000 and enjoy!

## Running Tests

High Street Gym includes a test suite that ensures the functionality of the app. This test suite includes unit tests written with Jest and React Testing Library along with End-to-End tests written with Selenium WebDriver.
To run the tests use the following commands:

* To run the entire test suite use `npm run test`
* To only run end-to-end tests use `npm run e2e`
* To only run unit tests use `npm run unit`

## Website Images


homepage
activities on home page


class schedule


admin


blog page
blog post


register page
sign in page