Git Product home page Git Product logo

amt_project's Introduction

Contributors Stargazers Issues

AMTech Project

The AMTech Project is a school practical project that aims to extend our skills on web app development and team work.
Explore the wiki »

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Contributing
  5. License
  6. Contact

About The Project

We developed an e-commerce website, selling high-tech consumer products. Here is our home page :

image-20220106152531769

Built With

Getting Started

Prerequisites

You need the following components to use the projet, please make sure you have installed them :

Installation

Production version

Ask the team for AWS SSH connection instructions.

No installation needed, see usage to use the web app in production version.

Development version (local)

  1. Clone the repo.
git clone https://github.com/Ga-3tan/AMT_Project.git
  1. Start the local mongoDB database in a docker container.
#Run this command in AMT_Project/db-dev/
docker-compose up -d
  1. The app authentication procedures works in combination with another service. If you want to try the webapp with the authentication feature you will also have to install the following project: Authentication service project (follow instructions on the project README for installation)

Usage

Production version

  1. Follow the team's instructions to establish a SSH connection with the application, then you can connect to it with the following address : http://localhost:8081.
  2. Play with the app (to try the app in admin privileges, please contact the team).

Development version

  1. Open the project in your favorite IDE.
  2. You'll need to configure your AWS S3 bucket secret accesses in the S3Config.java file and change the bucket properties in the application.properties file.
  3. If you use the authentication service, you will need to add the JWT secret to the environment variable of your IDE (or in the application.properties) and adapt ligne 17 of the JwtUtil.java file accordingly (set it to the defined environment variable or property in the application.properties). The JWT secret can be found in the CustomAuthenticationFilter.java file of the Authentication service project (you can change it if you want).
  4. Run the Application with your IDE.
  5. Connect to the application with the following address : http://localhost:8080.
  6. Play with the app (to try the app in admin privileges, see the README of the Authentication service project).


Contributing

  1. Clone the repo
git clone https://github.com/Ga-3tan/AMT_Project.git
  1. Start the local mongoDB database in a docker container
#Run this command in AMT_Project/db-dev/
docker-compose up -d
  1. In the project root, enable git flow (use default configuration)
#AMT_Project/
git flow init
  1. Create a branch (see below), open your favorites IDE and start coding

  2. If needed, clone the Authentication service

git clone https://github.com/Alessandro-AP/JWTAuthentication.git
  1. See here (point 2) to setup the JWT secret.

New Feature

  1. Use git flow to create features
git flow feature start feature_branch
  1. To end a feature and merge it in the develop branch
git flow feature finish feature_branch

Release branch

Create a release branch

Once a feature is ready for a release, a release branch is forked off of the develop branch by using the following command:

git flow release start '[version tag]'
Finish a release branch

Once the release is ready to ship, it will get merged it into main and develop, then the release branch will be deleted.

git flow release finish '[version tag]'

Note: It’s important to merge back into develop because critical updates may have been added to the release branch and they need to be accessible to new features.

Hot fix branch

Hotfix branches are a lot like release branches and feature branches except they're based on main instead of develop. This is the only branch that should fork directly off of main.

As soon as the fix is complete, it should be merged into both main and develop (or the current release branch), and main should be tagged with an updated version number.

A hotfix branch can be created using the following methods:

git flow hotfix start hotfix_branch

Then merge the branch to main and develop branch as usual:

git checkout main
git merge hotfix_branch
git checkout develop
git merge hotfix_branch
git branch -D hotfix_branch

Once done, use the following command to finish the hot fix branch:

git flow hotfix finish hotfix_branch

(back to top)



Contact

Alessandro Parrino
Daniel Sciarra
Marco Maziero
Gaétan Zwick
Anh Mai Hoang

Project Link: https://github.com/Ga-3tan/AMT_Project

License

Distributed under the MIT License. See LICENSE.txt for more information.

(back to top)

amt_project's People

Contributors

alessandro-ap avatar ds-daniel avatar ga-3tan avatar mait-hga avatar mazieromarco avatar

Stargazers

 avatar  avatar  avatar

amt_project's Issues

Base of the project

add the base files of the project. A simple webapp with a standard template.

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.