Git Product home page Git Product logo

my-gym-locator's Introduction

my-gym-locator

[Work in Progress] Web application to locate SATS gym centers on a map and see the available facilities

Brief Description

The purpose is to make it easy to check whether your favorite SATS gym center is open, and also to check the available facilities, all of which in English and easy to access in one single map.

The application is deployed at this link

The original SATS website are:

N.B.: The map is provided externally, but if you want to have a self-hosted map then I have a script to deploy an OpenStreetMap server here.

Specifications

This project uses Mapbox and is deployed via Docker on Heroku.

How to Start the Server

You can run the server via Node JS CLI or via a Docker container.

We'll start by cloning or downloading the project.

Clone Github repo
# Clone the Github repo
# cd to your project directory
cd <path-to-project-directory>

git clone https://github.com/redouane-dev/my-gym-locator.git
Download as ZIP

N.B.: By downloading instead of cloning, you will not have access to the Git branches, commits, ...etc.

# cd to your project directory
cd <path-to-project-directory>

# Download
wget "https://github.com/redouane-dev/my-gym-locator/archive/master.zip"

# Unzip
unzip master.zip

# Rename the project directory
mv my-gym-locator-master/ my-gym-locator/

Starting the server

Node CLI

# Install the depedencies by going the project directory and installing with NPM
cd <path-to>/my-gym-locator
npm install

# For development mode (To add the changes to the server automatically without restarting during development)
npm install --no-save nodemon # You can add -g to install globally

# Start (You'll see something like "... Server listening on PORT ...")
node server.js

# For development mode
nodemon --ignore static/data server.js

Dockerized Application

# Build a new docker image and a new container base on it
# Notice the dot at the end
# Add --file <dockerfile-name> to specify non-default Dockerfile
docker build --tag <image-name> .

# Check that the image with name <image-name> has been successfully created
docker images

# We're going to set the external port to 4444 but any free port can work. The internal port is designed to be 4444.
docker run --detach -p 4444:4444 <image-name>

Opening the app in localhost

After spinning the server, you can open your browser at http://localhost:4444/ to see the map

Image displayed at localhost

Perspectives

  • Improve the UX
  • Add other gyms

Resources

Useful Docs

my-gym-locator's People

Contributors

r13i avatar

Stargazers

Techsurajsingh avatar  avatar Reynnan avatar

Watchers

James Cloos avatar

Forkers

digits88

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.