Skip to content

ziotom78/instrumentdb

Repository files navigation

Forks Stargazers Issues GPL3 License Documentation Status


Logo

InstrumentDB

A RESTful database to manage specifications of complex scientific instruments
Explore the docs »

View Demo · Report Bug · Request Feature

Table of Contents

About The Project

Product Name Screen Shot

InstrumentDB is a customizable Django application with a database schema that can be used to store information about scientific instruments. An example of the website is available at https://insdbdemo.fisica.unimi.it: use demo as username and planckdbdemo as password.

The database provides a RESTful interface; a high-level Python wrapper is available in the repository https://github.com/ziotom78/libinsdb.

Built With

Getting Started

To get a local copy up and running follow these simple steps.

Prerequisites

You must have Python 3; it is advised to create a virtual environment before installing InstrumentDB.

Installation

  1. Clone the repo:

    git clone https://github.com/ziotom78/instrumentdb.git && cd instrumentdb
  2. Install all the dependencies using poetry:

    poetry install
  3. Create a custom configuration file and customize it. Be sure to put some random password in SECRET_KEY!

    cp .env.example .env && vim .env
  4. Create the database

    poetry run python3 manage.py migrate
  5. Create a superuser

    poetry run python3 manage.py createsuperuser
  6. Fire up the web server

    poetry run python3 manage.py runserver
  7. Connect to http://127.0.0.1:8000/ and enjoy!

Usage

See the documentation.

Roadmap

See the open issues for a list of proposed features (and known issues).

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Usage

License

Distributed under the GPL3 License. See LICENSE.md for more information.

Contact

Maurizio Tomasi - @MaurizioTomasi2 - ziotom78{at}gmail.com

Project Link: https://github.com/ziotom78/instrumentdb

Acknowledgements

  • The LiteBIRD Instrument Model team for many ideas: Sophie Henrot-Versillé, Hirokazu Ishino, Tomotake Matsumura.

  • The ASI (Agenzia Spaziale Italiana) SSDC Team for testing the code: Fabrizio Fabri, Antonio Guerra, Gemma Luzzi, Daniele Navarra, Gianluca Polenta