Skip to content

Instantly share code, notes, and snippets.

@ngatrann
Last active February 21, 2024 09:37
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ngatrann/99d226b7e9f4abbd30f7fb6255734078 to your computer and use it in GitHub Desktop.
Save ngatrann/99d226b7e9f4abbd30f7fb6255734078 to your computer and use it in GitHub Desktop.
GSoC 2021 Final Report

GSoC 2021 Final Report

Project Summary

For this project, I worked on adding more functionality and improve the overall design of Analysim. Currently, AnalySim is a Web-based data sharing platform that is similar to GitHub, but specialized for scientific projects. It seeks to simplify the analysis and visualization of datasets.

There are two main goals for this project:

  1. Add forking/cloning functionality to Analysim.
  2. Design and implement a new look to Analysim pages via bootstrap and CSS/HTML.

New Features Implemented

  1. Added forking/cloning functionality
    - Added frontend button
    - Copy existing project from the original author
    - Added forked project to current user's dashboard
    - Added frontend reference to original project for forked projects
    - Added reference to original project for forked projects in the database
  2. Redesigned front end architecture
    - Designed new theme/graphics for Analysim
    - Implemented new design for Home Page, Login Page, Register Page and ContactUs Page
  3. Heroku Migration
    - Migrated users' data from ElephantSQL to Heroku Database
    - Successfully deployed Analysim to Heroku

List of Commits

028734e Bug fix: Displaying project members list
a511049 Began working on forking functionality
319e68f Fork button create new empty project
3e4ac12 Update Project Members List without reload
7103bd3 Added fork restrictions
c3f28ce Add tooltip to fork button
2842e5d Fork button copy project
6e1d095 Update Project table
d728822 Update fork validation
8d3001b Improve fork functionality
ac20beb Allow forking empty projects
dc8768b Improve fork functionality
446cd01 Check for existing project
48aa6d2 Added reference to original project
d644ad6 Modified frontend design

ToDo

  1. Apply similar theme and graphic to remaining pages
  2. Fix bugs relating to some items only load after reloading page

Conclusion

This project was a great learning experience for me because I got a better understanding of the development process of open source programs and how to contribute to these programs. I also got to talk to a previous developer and learned more about current coding conventions and standards, and then apply the knowledge I learned to the code that I produced. My mentors were wonderful and helped guided me through difficult challenges while also encouraging me to think of new ideas.

Useful Links:

Analysim GitHub repository (NgaBranch)
Analysim Website

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment