Skip to content

Rajeshwari-Rudra/treasure-hunt

Repository files navigation

The-Hunt

β€œThe Hunt game” is an outdoor collaborative game which allows the authorized users to play with other team members or to compete with other players in finding the hidden locations in a quest. We are designing this game in view that this is compatible with iPhone SE, Laptop, Tablet, and Android phones.

A first time user has to register in order to become a player in the game with the Open Authorization. After the user creates an account he can login into the account. The player will have options either to join a team or to create a team. In order to join a team an invitation will be sent to the users via mail. The invitation will be automatic rejection if the user does not respond to it within three days. A user can create a quest containing number of locations that can be identified by means of latitudes and longitudes. A team containing players will compete to find the locations within specified time period. The team which identifies maximum number of locations within quest gains maximum number of points and will be the winner.

Links below

Codacy Badge

code style: prettier Code Style

Links

Stack

Platform: Node(Version - v15.1.0)
Web Framework : Express
View engine : EJS
Database : SQL
Object Relational Mapping(ORM) : Sequelize
Web App Host : Heroku
Data host : PostgreSQL
Coding standards : Enforce AirBnB/Prettier/ESlint

CI/CD

Auto-deploy from main repo is required.

Guidelines:

Prerequisites

  • Node.js (comes with npm)
  • Git
  • TortoiseGit
  • VS Code
  • VS Code Extension - Prettier
  • DB Browser for SQLite, e.g., standard for 64 Windows. Save the .msi file and double-click to run it.

Prerequisites for Publishing

Create Heroku app with Heroku Postgres (Hobby Dev - free) add-on.

Background - Steps to create a New App

  • Run Express-generator with EJS (dynamically create pages with HTML & embedded JS)
  • Update the JavaScript - change var to const, use async/await
  • Change package.json versions to "latest" - until you have issues, then freeze a version
  • Add folders to organize your code
  • Update to use Express app4 updates - stay current
  • Set up ESLint and Prettier

Build Responsive Apps (for all screen sizes)

  • We choose MDB 5 (Material Design Bootstrap 5 - no jQuery)

Instructions:

Follow conventions - use standard lowercase, no spaces, follow naming patterns

Enable standard CRUD options (create, read, update, delete)

  • Make a model & seed some data on startup
  • Route requests to specific routers
  • Route CRUD requests to controller functions
  • Create standard views for the resource
  1. create.ejs
  2. delete.ejs
  3. details.ejs
  4. edit.ejs
  5. index.ejs

Add a standard comment block at the top of each file.

Add yourself and email as the author (follow examples).

Contributors


Rajeshwari Rudravaram

πŸ’» linkedin

Nooka Raju Boddu

πŸ’» linkedin

Rohith Reddy Avisakula

πŸ’» linkedin

Puneeth Annam

πŸ’» linkedin

Bhaskar Reddy Minupuri

πŸ’» linkedin

Septs for Contribution:

Step 1 - Get fresh code.

  1. Pull fresh code. (Fork & clone if this is the first time.)

Steps for cloning repository using command line

  • On GitHub, navigate to the main page of the repository
  • Click "Code" on main page repository which is above the list of files.
  • Here we can clone using HTTPS and SSH.Click the respective tabs and copy the URL provided.
  • Now open Git Bash.(necessary tools should be installed)
  • Change the current working directory to the location where we want the cloned directory.
  • Type "git clone", and then paste the URL copied earlier.
  • Press "Enter" to create your local clone.
Note:
  • We can also clone the repository using github desktop.
  1. Run npm install
  2. Run npm run start
  3. Verify everything runs.
npm install
npm run start

Step 2 - Make your contributions.

As you test your code, format it with Prettier and lint (clean it up) with ESLint. See scripts in package.json.

  1. Immediately, make your local edits.
  2. Verify the app still runs & standarize your code (see commands below)
npm install
npm run start

npm run prettier
npm run lint
npm run lint-fix

Step 3 - Save your work.

  1. Git add & git commit locally.
  2. Git push to the origin.
  3. In your updated GitHub repo look for "Pull Request".
  4. Follow instructions (click the green buttons) to prepare a "pull request" into the main repo.

Start Options

Start the app by running npm run start. Until error handling is complete, a clean shutdown is better. Once error handling is complete, use npm run dev to start with nodemon.

npm run start

View the application locally at http://localhost:3060/

Sequelize commands

npx sequelize-cli db:migrate

PostgreSQL commands (for Production Database)

Start-Process 'C:\Program Files\PostgreSQL\13\scripts\runpsql.bat'
psql "${DATABASE_URL}"

Heroku commands (for Production App)

heroku login
heroku addons

click create new app on 'NEW' button
type the name of your app and then click "create app"
Create heroku project
setting up this heroku project to get automatically connected to code so that whenever code is pushed to your GitHub repo it directly gets updated. 
Heroku website is responding correctly with a default page.

References

Team Members

Boddu Nooka Raju :- Team Leader

Rohith Reddy Avisakula :- Architect

Bhaskar reddy Minupuri :- Front-end eveloper

Puneeth Annam :- Back-end Developer

Rajeshwari Rudravaram :- Database Administrator

Reminders

  • No spaces in folders and file names.
  • Don't work on stale code - ALWAYS pull first
  • Don't work on your desktop - organize your repos either by class or under a common folder (e.g., github or other).
  • Deploy as you work - if everything passes tests, we want to add / commit / push and deploy frequently (several times a week). We should see your app develop throughout the sprint.
  • Do hard things early. Do not delay figuring out the hard questions.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages