Giter Club home page Giter Club logo

muria's Introduction

Muria

Build Status codebeat badge License: MIT

Falcon boilerplate for API development with pony ORM

Fitur

Via (built-in) modified middlewares

Fitur Lain

  • Database storage(Postgres, MySQL/MariaDB, SQLite) using Pony ORM
  • Simple memcache support
  • Heroku deployment ready

Instalasi

Silahkan duplikat repo ini dari

$git clone https://github.com/xakiy/muria.git

Install paket-paket pendukungnya. Dianjurkan membuat python environment terlebih dahulu, baik dengan virtualenv, atau pyenv.

$pip install -r requirements-dev.txt

Aplikasi ini diatur melalui sebuah file konfigurasi yang bisa Anda contek dari tests/settings.ini, ubah dan sesuaikan menurut kebutuhan. Caranya, pilih salah satu section, yaitu bagian yang ada dalam kurung kotak, seperti [TEST], [POSGRESQL] atau [MYSQL], atau Anda bisa membuat section yang baru.

Atur paramater-parameter yang Anda butuhkan dan letakkan di bawah section yang akan Anda gunakan. Seperti, bila Anda memiliki parameter berbeda untuk cache_provider bisa Anda letakkan ke bawah section yang baru tersebut, begitu juga untuk parameter-parameter lainnya.

Simpan file konfigurasi tersebut di tempat yang Anda kehendaki, dan export file path-nya ke dalam variabel MURIA_CONFIG, dan section-nya ke dalam variabel MURIA_MODE, seperti:

$export MURIA_CONFIG=/home/user/api.konfigurasi.ini
$export MURIA_MODE=MYSQL  # sesuaikan dengan section yang Anda buat tadi

Terakhir Anda bisa menjalankannya dengan perintah:

$gunicorn --reload muria.wsgi:app

Kontribusi

Aplikasi masih dalam pengembangan intensif, bila Anda berminat untuk berkontribusi silahkan ajukan PR dan siapkan test terkait PR Anda. Terima kasih.

muria's People

Contributors

dependabot[bot] avatar xakiy avatar

Stargazers

 avatar

Watchers

 avatar

muria's Issues

Consider removing marshmallow mixin from pony entities

Consider removing marshmallow mixin from pony entities, and instead use pony own argument selector e.g. to_dict(exclude={'attr1', 'attr2']) or to_dict(only=['attr3', 'attr4']).

Currently we sanitize user input using marshmallow schema via mixin to pony entity. It need not be actually, because we can incorporate simple schema inside pony model. Thus making entity definition also contains json schema and validate user input by utilizing built-in before_insert method.

Add Revoked Token Collector

When using persistent storage to store revoked jwt token, we need to clean it up regularly to free up some spaces. Thus we need to spawn specific task for that.

Since this is still early requirement we could use cron like worker to fire up some scripts. Or using some light thread via gevent thread or something.

Add rate limiter to prevent access abuse

For some cases client may send too many queries in a given time, this may lead to unnecessary load for the server. So to prevent this we need to limit client access for a given time.

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.