Giter Site home page Giter Site logo

ohmnid / art-collect Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 2.27 MB

CodeClan final project - create an art collection management database using React and AWS serverless technologies

Home Page: https://www.art-collect.net

JavaScript 98.80% HTML 1.15% CSS 0.05%

art-collect's Introduction

art-collect-logo

Artwork collection management database

This project was built as the final part of CodeClan's Professional Software Development course. We were given free rein to build an app using whatever tech stack we liked, so I decided to build it using React with Tailwind CSS for the front end and AWS serverless technologies for the back end.

The app allows a user to add and delete artists, artworks and mediums to the database, as well as upload images. Functionality is minimal at the moment, but I hope to expand on this in the future.

The data is held in DynamoDB and accessed via AppSync with GraphQL queries. Images are held on S3 with Lambda used to process them into thumbnails on upload. Authentication is handled by Cognito. Everything is tied together with Amplify.

Usage

You can see the app live at https://www.art-collect.net

To install for your self:

  • Download/clone this repository
  • Cd to the project folder and run npm install
  • Download the AWS Amplify CLI
  • Run amplify init from the project folder to configure Amplify and create the Amplify resources
  • Run amplify push to push these resources to your AWS account
  • Run npm start to start the local development server

Future refinements/fixes

Progress on this project was hampered by having to learn many new technologies (AWS, Tailwind, GraphQL) in the 10 days I had to build it - I hope to continue working on this, and will probably rebuild it from the ground up as I learn about each system in more depth.

Future plans include:

  • Add editions/prints
  • Edit records
  • Much better image handling
  • Comprehensive search system
  • Searchable form fields
  • Other artwork fields and data - notes, sales, location, loans
  • Different views to show data
  • Sorting and filtering
  • QR code label/shipping label generation
  • Dark mode
  • Pagination of results
  • Import/export functionality
  • Significant UI improvements and tweaks
  • Synchronisation and live updates
  • Multiple users /w permission levels
  • Bulk actions
  • PDF exports
  • Recycle bin for delete
  • Social providers login
  • Analytics
  • Use Typescript

art-collect-layout

art-collect's People

Contributors

ohmnid avatar

Watchers

 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.