GAMMA-APP 💡

About this project 🤔

This project is part of a technical test as well as a mini project for testing the current newest versions of Angular and Symfony. The goal is to develop an Excel file import system called Gamma App with an attached interface for data management. As a user, I want to be able to import an Excel file into a database in order to view, edit, or delete information from a graphical interface. After making changes, I can export the updated data to a new Excel file. 🥳

It uses the monorepo strategy ✅:

1- ⚡ gamma-front: The frontend application that will be exposed to the users.
2- ⚡ gamma_api: A service that handles all the API calls.
3- ⚡ README file img: This folder contains the DB SQL dump file, the new exported Excel file, and the images for this fantastic README file. 🥳

Built With 🛠️

  • Angular 13, an open-source front-end framework for building dynamic web applications using TypeScript and HTML.
  • Symfony 6, a high-performance PHP web application framework that enables rapid development of robust and maintainable web applications.
  • My SQL, an open-source relational database management system used for storing and managing structured data.

Testing and developing Tool 👀

  • Postman, an API development and testing tool that simplifies the process of sending HTTP requests, managing APIs, and analyzing responses.
  • XAMPP, a free and open-source software package that provides a local server environment for web development, including tools like Apache, MySQL, PHP, and more.

( Go to the 🔝)

Getting Started 🎉

In order to run this project and extend its functionalities you need to follow a few steps :

Prerequisites 🧷

  • Make sure that Angular CLI is installed on your operating system.
  • Make sure that Symfony CLI is installed on your operating system.
  • Make sure that XAMPP is installed and running on your operating system.

Installation 🔧

  1. Clone the repo
    git clone https://github.com/oumaima-kboubi/gamma-app.git
If you want to build on top of the project
  1. Install NPM packages under the front project
    npm install
  2. Install composer packages under the back API project
    composer install
  3. Add a .env file for required projects
#DB connection string
DATABASE_URL="MySQL connection string" 
...
  1. Run all projects, ensure that all ports are well set and enjoy!

( Go to the 🔝)

The app live demo ♾️

The App frontend Overview💻

  • Initial empty band list

image

  • Import Excel file page

image

  • Import Error

image

  • Fully imported and modified band list page

image

  • Edit band page

image

  • Error edit band

image

  • Delete band

image

( Go to the 🔝)

Contact 📞

📧 Oumaima Kboubi - Kaboubioumaima@outlook.fr