Coder Social home page Coder Social logo

dsss's Introduction

dsss: a dead-simple SDMX server

PyPI version badge Documentation status badge Status badge for the "pytest" continuous testing workflow Codecov test coverage badge

A rudimentary implementation of the SDMX REST web service standard.

This code is developed mainly as an aid for prototyping and testing other code that generates SDMX or relies on SDMX REST web services being available. It is not currently intended and likely not ready for production use.

Implementation

The package depends only on:

  • sdmx1 —for the SDMX Information Model, file formats, URLs, URNs, and more.
  • starlette —as a base web service framework.

It provides a Store class and subclasses for storing the structures and data to be served by an instance.

License

Copyright 2014–2024, dsss developers

Licensed under the GNU Affero General Public License, Version 3.0 (the “License”); you may not use these files except in compliance with the License. You may obtain a copy of the License:

dsss's People

Contributors

khaeru avatar

Stargazers

 avatar

Watchers

 avatar  avatar

dsss's Issues

Add basic authorization using API keys

For #6, a first/naive implementation would simply accept and process any POST request.

To extend, add authorization. The simplest possible form would likely involve:

  • API keys/tokens generated with secrets.token_urlsafe()
  • …stored in a new field on the Config class.
  • …added in various ways:
    • Through a environment variable/CLI option when starting the server.
    • Read from a file.
    • etc.
  • Only binary authorization, i.e. not fine-grained.

(More sophisticated ways could involve the 'root' admin doing SDMX-REST POST to indicate authorizations and tokens associated as SDMX annotations of Contacts associated with particular Agencies in an AgencyScheme.)

Add ‘sdmx’ Topic: Boost Discoverability for SDMX Repositories

Dear repository owners, 🌟

As your repository is related to SDMX (Statistical Data and Metadata Exchange), please consider adding the sdmx topic to it. This will help other developers discover and engage with your project more easily.

To associate your repository with the sdmx topic, visit your repo's landing page and select 'manage topics'. Let's make SDMX-related projects more visible and accessible! 🚀

Thank you for contributing to the community! 🙌

For detailed instructions on how to add topics to your repository, refer to the GitHub documentation.

Happy coding! 🌐👩‍💻👨‍💻

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.