Giter Club home page Giter Club logo

publiccode-editor's Introduction

publiccode yml Editor

Build Status Issues License

An editor to generate and/or validate a publiccode.yml file


Table of Contents

Description

This node app is meant to be used to generate a valid publiccode.yml file. By means of filling all the forms it is possible to automatically generate a YAML file compatible with the latest version of the standard. Such a file may be copied or downloaded locally in order to be inserted in the root of the target repository.

Furthermore, the app may be used as a validator. In fact, it is possible to paste an already existing publiccode.yml file inside the editor or import it by means of the load button. As such, the editor will validate the imported document and eventually it will help to fix the existing issues.

Demo

It is possible to try a live demo of the editor. The demo can be found here. This version of the demo is automatically deployed from the master branch so it should be considered stable.

Screenshot

Screenshot

Contributing

Contributions are always welcome! If you find some problems or glitches when using the app, we warmly encourage you to file an issue using GitHub's issue tracking feature. However, the CONTRIBUTING.md file located inside the root of the repo provides insightful details about how to collaborate in an efficient way with the community.

Setup

Manual

This is a REACT app. As such, you need the basic tools to interact with it. You can use yarn.

First clone (or download) the repository:

$ git clone https://github.com/italia/publiccode-editor.git

Then open a shell, navigate to the freshly downloaded folder and run:

$ yarn install

to install the dependencies. Now, in order to run the development server locally, you should run:

$ yarn dev

This will expose a webserver listening to port 3000. As such, you may browse http://127.0.0.1:3000 to check the app.

URLs

All the URLs used throughout the app are stored in a dedicated file found in app/contents/constants.js in order to be easily changed.

Elasticsearch Integration

Starting from release 1.1, the iPA list is fetched from an Elasticsearch instance. This endpoint is communicated by means of the ELASTIC_URL environment variable. If the variable is not present, the app falls back into using a simple input form for such a key.

Docker

If you want to fire a docker instance for deployment purposes, you can make use of the Dockerfile already in the root of the project. By running:

$ docker build -t publiccode-editor .

you can build a docker image. Subsequently, by running:

$ docker run -p 3000:80 publiccode-editor

you can run the docker container and see the results inside the browser at localhost:80

Alternatively you can opt for docker-compose way, just copy .env-example to .env and filling with your ES instance and then run:

$ docker-compose up

And pointing your browser at localhost:8100

License

This project is covered by a GNU Affero General Public License v3.0 or later license.

publiccode-editor's People

Contributors

sebbalex avatar bfabio avatar lorezz avatar libremente avatar dependabot[bot] avatar mfortini avatar gtico80 avatar lucaprete avatar snyk-bot avatar ainali avatar souravpd avatar targee avatar tikhsup avatar

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.