This is a project for creating a website with backend and user accounts, Paypal payment and Admin functionality.
The users can edit 2D drawings online and save them in a library.
The drawings editor has a element creation functionality and a simple menu system. Drawings can exist as macro block elements in other drawings.
All drawing data is saved in a text format.
The project can be Drupal based
The system should be hosted on a scalable cloud server like AWS
This project will have a continuation if successfully done
Website back end for editing drawings online.
User account system:
- User accounts (multiple users) with their own database of drawings.
- User verification through email.
- User signup, account creation / deletion.
- Signup, login and logout page. (user and admin)
- Administrator to add / delete accounts, account statistics, view accounts.
- Payment system interface (PayPal), usage payment for site.
Drawing editing system:
- User can edit 2D drawings in A4 - A0 format online. All measurements in millimeters. Precision 0.10 millimeter.
- First version, only lines, squares, rectangles circles and text are possible to use.
- Drawing editor consist of 2 parts, module editor and drawing editor.
- Editor has a library of modules (created as a small drawing).
- When editing a drawing, the created elements and macro elements are placed on a drawing and connected by lines. Text can also be placed and connected.
- An element is a small "circuit"/block with numbered inputs and outputs.
- Text can exist in the element.
- Elements are edited in a separate "element editor" and placed in the library.
- Elements are then selected in a menu and placed as "drag and drop" on the drawing to be edited.
- The elements are connected by lines to each other and text.
- Certain rules for how lines can be drawn exist (no bird nests...)
- Create, edit and delete drawings.
- Drawings and objects can be done in color.
- Line width should be definable.
- Drawing grid and grid snap defined, grid visible and invisible.
- Drawings can be panned, zoomed and printed.
- Element editor creates and names a block element of squares, circles, lines and text and saves in element database.
- Each element has a unique name and identifier.
- Menu system for drawings and elements.
- Duplicate, copy and paste of drawing, parts of drawing and blocks between drawings.
- Drawings can be associated with other drawings (projects).
- Drawings can exist within a drawing (macro elements).
- Drawing database should be saved as objects with identifiers and insertion coordinates of objects in text format as a text file.
- Drawing backup file should be created.
- Save and auto save of drawings during editing.
- Text handled as text strings with string insertion point.
Web development project type:
Client side or server side development:
Server Side Development
Specific programming languages desired:
PHP / Apache, Linux based system C/C++
Desired website or component functionality:
User should be able to login and create 2D drawings that are saved on their account, according to specifications.
Payment (subscription) through PayPal for account usage. Payment per monthly subscription, and for certain additional services.
Lead time: 6 weeks
Payment terms: Project can either be done at an agreed fixed price or payment by hour within a budget at a an agreed rate with set milestones.
Project start: As soon as possible.
You are welcome to come with ideas for additional functionality of the drawing system and account system. This is the first part of a larger project.