This repository held a tool to visualize an FPGA simulation.
This project involves creating a web-based interface for an FPGA simulator that visually demonstrates how signals propagate within an FPGA. It is designed to serve as an educational tool. Our goal is to help users understand FPGA internals by merging a 2D floorplan view of the FPGA (showing its basic elements and the interconnections between them) with a dynamic simulation of signal timing.
- Status
- Usage
- Installing/Getting Started
- Roadmap
- Documentation Of The Project
- Development
- Tests
- Contributing
- API Description
- Changelog
- Copyrights
- Contacts
- Credits And Acknowledgement
This project is currently in progress. However, after 2025/04/01, our team will be focusing on another project, which is why the frequency of updates will be greatly diminished.
Therefore, if you are willing to keep going on this project, please refer to the Contributing part.
-
Click on Visualize.
-
Click on the desired example.
A new page with the visualization of the example should open.
Note
On the visualization page, you can:
- Zoom In/Zoom Out
- Move around
- Fullscreen
-
Click on Create.
-
Click on the name text box, then, enter your example name.
-
Click on Add Example, then, select the wanted files.
Note
You can also drag and drop them directly inside the section.
- Click on the Create button.
You can now refer to the How To Visualize An Example section to visualize your example again.
- Clone the repository.
git clone https://github.com/algosup/2024-2025-project-4-web-fpga-team-5
- Navigate to the directory.
cd 2024-2025-project-4-web-fpga-team-5
- Install dependencies.
npm i
- Run the app.
npm run main
The application is now available at the following address:
Or:
For better information, please, refer to the User Manual.
This project is a six-week school project. Therefore, the roadmap would only be effective for this amount of time.
If you want to take a look, you can access the roadmap by clicking this link.
Functional Specifications: Describes what the software does by outlining user requirements and expected functionalities.
Technical Specifications: Details how the software will be built, including architecture, design, and technology choices.
Project Charter: Officially initiates the project by defining its scope, objectives, stakeholders, and overall framework.
Test Plan: Outlines the strategy, procedures, and criteria for verifying that the system meets its requirements.
User Manual: Provides end-users with instructions on how to use the system and how to troubleshoot common issues.
The list of the main libraries and frameworks used in our project :
Language: JS
To set up the dev environment you'll need to have many dependencies and libraries installed.
All the different installation guides can be found in the Technical Specifications.
This section explains how to run the end-to-end tests created by the quality assurance.
You must be at the root of the project and Node.JS is already installed.
If not you need to fork the project at this link and install Node.JS at this one.
To test the front-end:
# Move to the correct folder
cd frontend/
# Dependencies installation
npm i
# Execute the test suites
npm run test:e2e
To test the back-end:
# Move to the correct folder
cd backend/
# Dependencies installation
npm i
# Execute the test suites
npm run test:e2e
To contribute to our project, please, ensure you follow the conventions you can find in the CONTRIBUTING.md file.
Access the API documentation here.
Latest: NULL
Current: NULL
Version List: Click to view
Ownership: CNES and ALGOSUP Third-party Assets:
Images:
- CNES Logo (Public Domain)
- React Logo (MIT License)
- D3.js Logo (BSD-3-Clause License)
- Node.js Logo (MIT License)
- JSON Logo (Public Domain)
- Vite Logo (MIT License)
- SPIN Logo (AI-Generated)
Frontend:
- React.js (MIT License)
- React DOM (MIT License)
- React Router DOM (MIT License)
- D3.js (BSD-3-Clause License)
- TailwindCSS (MIT License)
- Vite (MIT License)
- @tailwindcss/vite (MIT License)
Backend:
- Express.js (MIT License)
- CORS (MIT License)
- Multer (MIT License)
- Jest (MIT License)
- Supertest (MIT License)
Copyright Notice: © 2024 CNES and ALGOSUP. All rights reserved.
To contact our project team. Please, send a message to the following E-mails:
- Project Manager's E-mail: [email protected]
- Program Manager's E-mail: [email protected]
For other social media information, please, refer to Credits And Acknowledgement.
Particular thanks to Florent from the CNES for giving us the opportunity to work on this project.
Thanks to our school, ALGOSUP for letting us improve and having such interesting projects.
Finally, thanks to all the team members for those six weeks.
You can find their profiles underneath.
Role | Name | Contact |
---|---|---|
Project Manager | Robin GOUMY | GitHub | LinkedIn |
Program Manager | Alexandre BOPP | GitHub | LinkedIn |
Technical Leader | Maxime THIZEAU | GitHub | LinkedIn |
Software Engineer | Geoffrey Delrieu | GitHub | LinkedIn |
Quality Assurance | Mathias DELILLE | GitHub | LinkedIn |
Technical Writer | Habi CAILLEAU | GitHub | LinkedIn |