Code Monkey home page Code Monkey logo

elmarmalade's Introduction

The Marmalade Service - A package repository in EmacsLisp

This is an EmacsLisp package to reimplement the marmalade-repo with Elnode. Natalie Weizenbaum wrote the original marmalade-repo with node.js and mongodb.

How to

  • Need an account? - make an issue on the Github and Nic will send you a mail with a confirmation link
  • Need to delete a package? - it's possible through the API with the marmalade-client package
  • Need to upload a package? - use the API throught the marmalade-client package

About

This reimplementation uses an Elnode application dealing with a filesystem of all packages. It's basically a file server app. It also follows the microservice model.

This packages includes conversion tools from the mongodb to the filesystem.

These are the things marmalade should do:

  • construct the package archive file from the package directory structure
    • the package archive is an index of all the packages in the repository.
  • allow the archive to be updated with uploads
  • provide the ELPA /package/ HTTP API for downloading packages
  • provide HTML front end to the /package/ HTTP API
  • provide EmacsLisp front end to the /package/ HTTP API
    • this will likely be a separate project
  • allow users to /register/ in order to upload packages
  • provide /profile/s for people who have registered
  • allow registered users to upload and upgrade packages
    • preferably from inside their emacs
    • and securely
  • allow registered users to be added as owners

Other marmalade things

It would be nice if marmalade provided better package discovery.

It would be nice if marmalade stored licences in a clear way and allowed you to use only safe licences if you wish.

How it works

The package is contained in the top level. Elpakit is used to build it.

marmalade-repo-test is a test directory containing packages used by the test scripts.

marmalade-repo-test/possible-packages contains stuff we don't have tests for but probably should have.

elmarmalade's People

Contributors

nicferrier avatar ruediger avatar camdez avatar trevoke avatar bbigras avatar nex3 avatar philhudson avatar swsnr avatar micrypt avatar purcell avatar wasamasa avatar

Watchers

James Cloos avatar Glen Ritchie 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.