Coder Social home page Coder Social logo

crudify's Introduction

Crudify

Crudify is a simple Golang project that implements basic CRUD function using Golang as it's my first experience with this language. I tried to use Storage interface but making some general database functions that allows you to use them for all models using context and reflection in Go!

How to use it?

keep calm and run make run! then the application starts to listen on port 8080 by default. if you like to edit listen port, just edit it in the main.go file

s := NewServer("0.0.0.0", "8080", pgStorage)

Don't forget to put your own database credentials in the main.go file

How to add new Model?

To add new model:

  1. Define your model struct in the models.go file
  2. Add your model into migrate.go file for AutoMigration
  3. Implement your Handlers in the handlers.go file

How to use different database?

Here, I am using postgresql as it's my favorite relational database :) but if you like to use different databse:

  1. Create separate .go file and call it with your db name in main package
  2. Implement all StorageInterface methods in that file
  3. Use it in the main.go to pass it to NewServer()

Just be sure you are implementing general functions to use reflection and context to get and return all models using same methods

Contribution

Just fork the repo and make your changes in new branch starting with feat/your-feature-name. create PR when you are done!

crudify's People

Stargazers

 avatar

Watchers

Javad N. 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.