Coder Social home page Coder Social logo

steffo99 / sophon Goto Github PK

View Code? Open in Web Editor NEW
9.0 1.0 1.0 8.13 MB

Research hub for universities

Home Page: https://sophon.steffo.eu

License: GNU Affero General Public License v3.0

Python 48.17% HTML 0.86% CSS 0.29% TypeScript 47.64% JavaScript 1.18% Shell 0.10% Dockerfile 0.84% Makefile 0.44% Batchfile 0.48%
django django-rest-framework unimore-informatica docker docker-compose typescript react apache-httpd jupyterlab jupyter-notebook

sophon's Introduction

Sophon

A research hub for universities

Screenshot 1

Screenshot 2

Screenshot 3

Goal

The goal of this project is developing a platform that universities can use to host and share their datasets, research projects and resulting papers.

Installation

Requirements

Steps

  1. Create a new directory named sophon on your machine and enter it:

    # mkdir sophon
    # cd sophon
  2. Pull the ghcr.io/steffo99/sophon-jupyter Docker image:

    # docker pull ghcr.io/steffo99/sophon-jupyter
  3. Download the docker-compose.yml file from this repository:

    # wget "https://raw.githubusercontent.com/Steffo99/sophon/main/docker-compose.yml"
  4. Configure the docker-compose.yml file following the instructions written in the comments:

    # vim docker-compose.yml
  5. Start the Docker containers:

    # docker compose up -d

Structure

The project consists of four parts:

For more details on the underlying libraries, packages, modules and plugins used, see the following files:

Development

Progress

Development progress is tracked on issues #20 and #67.
Also see the issue tracker.

Tools

Sophon is developed using IntelliJ IDEA Ultimate.

Metadata is included in the /.idea directory so that code style and run configuration are consistent across all machines used during the development.

Run configurations for running the backend, testing the backend, running the frontend and testing the frontend are included.

Commits

Commits names are prefixed with a variant of Gitmoji which follows roughly this legend:

  • ✨ New feature
  • 🔧 Refactor or tweak
  • 🐛 Bug fix
  • 🧹 Cleanup
  • 📔 Documentation
  • 🎓 Thesis
  • 🗒 Readme
  • ⬆ Dependency update
  • 📦 Packaging
  • 🔨 Tool update
  • 🚧 Work in progress
  • 🔀 Merge

Continuous Deployment (CD)

Sophon uses GitHub Actions and Vercel for Continuous Deployment.

Docker images for the frontend, backend, proxy and jupyterlab are built by GitHub Actions on each push to the main branch of this repository, and automatically published to the GitHub Container Registry

A generic version of the frontend is build automatically by Vercel on each push to the main branch and on every pull request to this repository, and automatically published to the sophon.steffo.eu domain.

Releases

Releases are created on each milestone and are available on the Releases page.

People

The project is developed by Stefano Pigozzi for Università degli studi di Modena e Reggio Emilia.

sophon's People

Contributors

dependabot[bot] avatar steffo99 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

cookie-chr

sophon's Issues

Scegliere un virtualenv manager

Le opzioni sono:

  • #1: Poetry
  • #2: Pipenv

Personalmente preferirei Poetry, perchè lo conosco meglio e perchè mi sembra più veloce, ma posso tranquillamente usare anche Pipenv se necessario.

Activity log

It would be useful for all Sophon activity to be logged in a database table.

Creare elenco di fonti ricercabile

  • elenco di fonti utilizzate e disponibili con caratteristiche delle stesse (una sorta di metadati importanti tipo: argomenti presenti, colonne, date range, etc.)

Paginazione richieste a Eurostat

Nel fare richieste ad Eurostat con moli di dati "eccessive" (dove per eurostat eccessive è davvero poco) si ottiene un crash e bisogna aggiungere filtri per ridurre la mole di dati.
Investigare se possibile una sorta di paginazione del risultato.

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.