diff --git a/.babelrc b/.babelrc index 7c36681..12d4069 100644 --- a/.babelrc +++ b/.babelrc @@ -1,11 +1,15 @@ { "presets": [ - "env", + [ + "env", + { + "modules": false + } + ], "react", - "stage-1" + "stage-0" ], "plugins": [ - "react-hot-loader/babel", "transform-es2015-modules-commonjs" ] -} +} \ No newline at end of file diff --git a/.eslintrc.json b/.eslintrc.json index 2289d9e..6921d95 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -11,8 +11,9 @@ "sourceType": "module" }, "plugins": [ - "import", - "react", + "import", + "react", + "jest", "jsx-a11y", "babel" ], @@ -20,7 +21,8 @@ "env": { "browser": true, "node": true, - "es6": true + "es6": true, + "jest": true }, "rules": { "class-methods-use-this": "off" diff --git a/.github/CODE_OF_CONDUCT.md b/.github/CODE_OF_CONDUCT.md new file mode 100644 index 0000000..6260ba7 --- /dev/null +++ b/.github/CODE_OF_CONDUCT.md @@ -0,0 +1,80 @@ +# REACT PROTO CODE OF CONDUCT 1.0 + +### Introduction + +>Following these guidelines helps to communicate that you respect the time of the developers managing and developing this open +source project. In return, we ensure to reciprocate that respect in addressing your issue, assessing changes, and helping you +finalize your pull requests. If you are new here also checkout our [Contribution Guidelines](CONTRIBUTING.md) + +### Our Pledge + +In the interest of fostering an open and welcoming environment, we as +contributors and maintainers pledge to making participation in our project and +our community a harassment-free experience for everyone, regardless of age, body +size, disability, ethnicity, gender identity and expression, level of experience, +nationality, personal appearance, race, religion, or sexual identity and +orientation. + +### Our Standards + +Examples of behavior that contributes to creating a positive environment +include: + +* Using welcoming and inclusive language +* Being respectful of differing viewpoints and experiences +* Gracefully accepting constructive criticism +* Focusing on what is best for the community +* Showing empathy towards other community members + +Examples of unacceptable behavior by participants include: + +* The use of sexualized language or imagery and unwelcome sexual attention or +advances +* Trolling, insulting/derogatory comments, and personal or political attacks +* Public or private harassment +* Publishing others' private information, such as a physical or electronic + address, without explicit permission +* Other conduct which could reasonably be considered inappropriate in a + professional setting + +### Our Responsibilities + +Project maintainers are responsible for clarifying the standards of acceptable +behavior and are expected to take appropriate and fair corrective action in +response to any instances of unacceptable behavior. + +Project maintainers have the right and responsibility to remove, edit, or +reject comments, commits, code, wiki edits, issues, and other contributions +that are not aligned to this Code of Conduct, or to ban temporarily or +permanently any contributor for other behaviors that they deem inappropriate, +threatening, offensive, or harmful. + +### Scope + +This Code of Conduct applies both within project spaces and in public spaces +when an individual is representing the project or its community. Examples of +representing a project or community include using an official project e-mail +address, posting via an official social media account, or acting as an appointed +representative at an online or offline event. Representation of a project may be +further defined and clarified by project maintainers. + +### Enforcement + +Instances of abusive, harassing, or otherwise unacceptable behavior may be +reported by contacting the project team at [INSERT EMAIL ADDRESS]. All +complaints will be reviewed and investigated and will result in a response that +is deemed necessary and appropriate to the circumstances. The project team is +obligated to maintain confidentiality with regard to the reporter of an incident. +Further details of specific enforcement policies may be posted separately. + +Project maintainers who do not follow or enforce the Code of Conduct in good +faith may face temporary or permanent repercussions as determined by other +members of the project's leadership. + +### Attribution + +This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, +available at [http://contributor-covenant.org/version/1/4][version] + +[homepage]: http://contributor-covenant.org +[version]: http://contributor-covenant.org/version/1/4/ \ No newline at end of file diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md new file mode 100644 index 0000000..ee892b6 --- /dev/null +++ b/.github/CONTRIBUTING.md @@ -0,0 +1,76 @@ +# React-Proto Contributing Guide 1.0 + +> First off, thank you for considering making a contribution to [React Proto](https://github.com/React-Proto/react-proto). +It's people like you that inspire our commitment to open-source. + +The goal of this document is to create a contribution process that: + +* Encourages new contributions. +* Encourages contributors to remain involved. +* Creates a transparent decision making process that makes it clear how contributors can be involved in decision making. + +## Vocabulary + +* A **Contributor** is any individual creating or commenting on an issue or pull request. +* A **Committer** is a subset of contributors who have been given write access to the repository. + +# Logging Issues + +Log an issue for any question or problem you might have. When in doubt, log an issue, and +any additional policies about what to include will be provided in the responses. The only +exception is security dislosures which should be sent privately. + +Committers may direct you to another repository, ask for additional clarifications, and +add appropriate metadata before the issue is addressed. + +Please be courteous and respectful. Every participant is expected to follow the +project's Code of Conduct. + +Keep an open mind! Improving documentation, bug triaging, or writing tutorials are all examples of helpful contributions that +mean less work for you. + +# Contributions + +### Ground Rules + +> Responsibilities +> * Ensure cross-platform compatibility for every change that's accepted. Windows, Mac, Debian & Ubuntu Linux. +> * Ensure that code that goes into core meets all requirements and pass tests. +> * Create issues for any major changes and enhancements that you wish to make. Discuss things transparently and get community +feedback. +> * Keep feature versions as small as possible, preferably one new feature per version. +> * Be welcoming to newcomers and encourage diverse new contributors from all backgrounds. Check our [CODE OF +CONDUCT](CODE_OF_CONDUCT.md) + + + + + +Any change to resources in this repository must be through pull requests. This applies to all changes +to documentation, code, binary files, etc. Even long term committers and Project Maintainers must use +pull requests. + +No pull request can be merged without being reviewed. + +For non-trivial contributions, pull requests should sit for at least 36 hours to ensure that +contributors in other timezones have time to review. Consideration should also be given to +weekends and other holiday periods to ensure active committers all have reasonable time to +become involved in the discussion and review process if they wish. + +The default for each contribution is that it is accepted once no committer has an objection. +During review committers may also request that a specific contributor who is most versed in a +particular area gives a "LGTM" before the PR can be merged. There is no additional "sign off" +process for contributions to land. Once all issues brought by committers are addressed it can +be landed by any committer. + +In the case of an objection being raised in a pull request by another committer, all involved +committers should seek to arrive at a consensus by way of addressing concerns being expressed +by discussion, compromise on the proposed change, or withdrawal of the proposed change. + +If a contribution is controversial and committers cannot agree about how to get it to land +or if it should land then it should be escalated to any of the Project Maintainers, +[@refinedblessing](https://github.com/refinedblessing) , [@erikguntner](https://github.com/erikguntner) , +[brianwtaylor](https://github.com/brianwtaylor). +Project Maintainers should regularly discuss pending contributions in order to find a resolution. It is expected that only a +small minority of issues be brought to the Project Maintainers for resolution and that discussion and compromise among +committers be the default resolution mechanism. diff --git a/.github/ISSUE_TEMPLATE/Bug_report.md b/.github/ISSUE_TEMPLATE/Bug_report.md new file mode 100644 index 0000000..c4a861e --- /dev/null +++ b/.github/ISSUE_TEMPLATE/Bug_report.md @@ -0,0 +1,52 @@ +--- +name: "\U0001F41BBug report" +about: Something isn't working right +--- + +### React-Prot Version: x.x.x + + + +### Details + + + +### Expected Behavior + + + +### Actual Behavior + + + +### Possible Fix + + + +
Additional Info + +### Your Environment + + + +- Environment name and version (e.g. Windows 10, node.js 5.4): +- Operating System and version (Mac or Linux): +- Useful link to screenshot or any other information: + +### Steps to Reproduce + + + + + +1. first... +2. +3. +4. + +### Stack Trace + + + +
diff --git a/.github/ISSUE_TEMPLATE/Feature_request.md b/.github/ISSUE_TEMPLATE/Feature_request.md new file mode 100644 index 0000000..7736d4a --- /dev/null +++ b/.github/ISSUE_TEMPLATE/Feature_request.md @@ -0,0 +1,25 @@ +--- +name: "\U0001F680Feature request" +about: Suggest an idea for React-Proto +--- + +### Description + + + +### Why + + + + + +### Possible Implementation & Open Questions + + + + + +### Is this something you're interested in working on? + + + diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 0000000..e2c92aa --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,34 @@ + + +## Description + + + + + + + +## How Has This Been Tested? + + + + + +## Types of changes + + + +- [ ] Bug fix (non-breaking change which fixes an issue) +- [ ] New feature (non-breaking change which adds functionality) +- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected) +- [ ] This change requires a documentation update + +## Checklist: + + + + + +- [ ] I have read the **CONTRIBUTING** document and have signed (or will sign) the CLA. +- [ ] I have updated/added documentation affected by my changes. +- [ ] I have added tests to cover my changes. diff --git a/.gitignore b/.gitignore index cfcfbe0..079b0af 100644 --- a/.gitignore +++ b/.gitignore @@ -83,6 +83,7 @@ node_modules/ jspm_packages/ dist/ build/ +release-builds/ # TypeScript v1 declaration files typings/ @@ -153,6 +154,9 @@ $RECYCLE.BIN/ ## ## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore +#VSCode +.vscode/ + # User-specific files *.suo *.user @@ -475,4 +479,8 @@ ASALocalRun/ # MFractors (Xamarin productivity tool) working folder .mfractor/ +# DMG File +React-Proto.dmg +installers/ + # End of https://www.gitignore.io/api/node,linux,macos,windows,visualstudio,yarn diff --git a/.npmignore b/.npmignore new file mode 100644 index 0000000..19102d3 --- /dev/null +++ b/.npmignore @@ -0,0 +1,485 @@ +# Created by https://www.gitignore.io/api/node,linux,macos,windows,visualstudio,yarn + +### Linux ### +*~ + +# temporary files which can be created if a process still has a handle open of a deleted file +.fuse_hidden* + +# KDE directory preferences +.directory + +# Linux trash folder which might appear on any partition or disk +.Trash-* + +# .nfs files are created when an open file is removed but is still being accessed +.nfs* + +### macOS ### +# General +.DS_Store +.AppleDouble +.LSOverride +build/ + +# Icon must end with two \r +Icon + +# Thumbnails +._* + +# Files that might appear in the root of a volume +.DocumentRevisions-V100 +.fseventsd +.Spotlight-V100 +.TemporaryItems +.Trashes +.VolumeIcon.icns +.com.apple.timemachine.donotpresent + +# Directories potentially created on remote AFP share +.AppleDB +.AppleDesktop +Network Trash Folder +Temporary Items +.apdisk + +### Node ### +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +# Runtime data +pids +*.pid +*.seed +*.pid.lock + +# Directory for instrumented libs generated by jscoverage/JSCover +lib-cov + +# Coverage directory used by tools like istanbul +coverage + +# nyc test coverage +.nyc_output + +# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) +.grunt + +# Bower dependency directory (https://bower.io/) +bower_components + +# node-waf configuration +.lock-wscript + +# Compiled binary addons (https://nodejs.org/api/addons.html) +build/Release + +# Dependency directories +node_modules/ +jspm_packages/ +dist/ +release-builds/ + +# TypeScript v1 declaration files +typings/ + +# Optional npm cache directory +.npm + +# Optional eslint cache +.eslintcache + +# Optional REPL history +.node_repl_history + +# Output of 'npm pack' +*.tgz + +# Yarn Integrity file +.yarn-integrity + +# dotenv environment variables file +.env + +# parcel-bundler cache (https://parceljs.org/) +.cache + +# next.js build output +.next + +# nuxt.js build output +.nuxt + +# vuepress build output +.vuepress/dist + +# Serverless directories +.serverless + +### Windows ### +# Windows thumbnail cache files +Thumbs.db +ehthumbs.db +ehthumbs_vista.db + +# Dump file +*.stackdump + +# Folder config file +[Dd]esktop.ini + +# Recycle Bin used on file shares +$RECYCLE.BIN/ + +# Windows Installer files +*.cab +*.msi +*.msix +*.msm +*.msp + +# Windows shortcuts +*.lnk + +#!! ERROR: yarn is undefined. Use list command to see defined gitignore types !!# + +### VisualStudio ### +## Ignore Visual Studio temporary files, build results, and +## files generated by popular Visual Studio add-ons. +## +## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore + +# User-specific files +*.suo +*.user +*.userosscache +*.sln.docstates + +# User-specific files (MonoDevelop/Xamarin Studio) +*.userprefs + +# Build results +[Dd]ebug/ +[Dd]ebugPublic/ +[Rr]elease/ +[Rr]eleases/ +x64/ +x86/ +bld/ +[Bb]in/ +[Oo]bj/ +[Ll]og/ + +# Visual Studio 2015/2017 cache/options directory +.vs/ +# Uncomment if you have tasks that create the project's static files in wwwroot +#wwwroot/ + +# Visual Studio 2017 auto generated files +Generated\ Files/ + +# MSTest test Results +[Tt]est[Rr]esult*/ +[Bb]uild[Ll]og.* + +# NUNIT +*.VisualState.xml +TestResult.xml + +# Build Results of an ATL Project +[Dd]ebugPS/ +[Rr]eleasePS/ +dlldata.c + +# Benchmark Results +BenchmarkDotNet.Artifacts/ + +# .NET Core +project.lock.json +project.fragment.lock.json +artifacts/ + +# StyleCop +StyleCopReport.xml + +# Files built by Visual Studio +*_i.c +*_p.c +*_i.h +*.ilk +*.meta +*.obj +*.iobj +*.pch +*.pdb +*.ipdb +*.pgc +*.pgd +*.rsp +*.sbr +*.tlb +*.tli +*.tlh +*.tmp +*.tmp_proj +*.vspscc +*.vssscc +.builds +*.pidb +*.svclog +*.scc + +# Chutzpah Test files +_Chutzpah* + +# Visual C++ cache files +ipch/ +*.aps +*.ncb +*.opendb +*.opensdf +*.sdf +*.cachefile +*.VC.db +*.VC.VC.opendb + +# Visual Studio profiler +*.psess +*.vsp +*.vspx +*.sap + +# Visual Studio Trace Files +*.e2e + +# TFS 2012 Local Workspace +$tf/ + +# Guidance Automation Toolkit +*.gpState + +# ReSharper is a .NET coding add-in +_ReSharper*/ +*.[Rr]e[Ss]harper +*.DotSettings.user + +# JustCode is a .NET coding add-in +.JustCode + +# TeamCity is a build add-in +_TeamCity* + +# DotCover is a Code Coverage Tool +*.dotCover + +# AxoCover is a Code Coverage Tool +.axoCover/* +!.axoCover/settings.json + +# Visual Studio code coverage results +*.coverage +*.coveragexml + +# NCrunch +_NCrunch_* +.*crunch*.local.xml +nCrunchTemp_* + +# MightyMoose +*.mm.* +AutoTest.Net/ + +# Web workbench (sass) +.sass-cache/ + +# Installshield output folder +[Ee]xpress/ + +# DocProject is a documentation generator add-in +DocProject/buildhelp/ +DocProject/Help/*.HxT +DocProject/Help/*.HxC +DocProject/Help/*.hhc +DocProject/Help/*.hhk +DocProject/Help/*.hhp +DocProject/Help/Html2 +DocProject/Help/html + +# Click-Once directory +publish/ + +# Publish Web Output +*.[Pp]ublish.xml +*.azurePubxml +# Note: Comment the next line if you want to checkin your web deploy settings, +# but database connection strings (with potential passwords) will be unencrypted +*.pubxml +*.publishproj + +# Microsoft Azure Web App publish settings. Comment the next line if you want to +# checkin your Azure Web App publish settings, but sensitive information contained +# in these scripts will be unencrypted +PublishScripts/ + +# NuGet Packages +*.nupkg +# The packages folder can be ignored because of Package Restore +**/[Pp]ackages/* +# except build/, which is used as an MSBuild target. +!**/[Pp]ackages/build/ +# Uncomment if necessary however generally it will be regenerated when needed +#!**/[Pp]ackages/repositories.config +# NuGet v3's project.json files produces more ignorable files +*.nuget.props +*.nuget.targets + +# Microsoft Azure Build Output +csx/ +*.build.csdef + +# Microsoft Azure Emulator +ecf/ +rcf/ + +# Windows Store app package directories and files +AppPackages/ +BundleArtifacts/ +Package.StoreAssociation.xml +_pkginfo.txt +*.appx + +# Visual Studio cache files +# files ending in .cache can be ignored +*.[Cc]ache +# but keep track of directories ending in .cache +!*.[Cc]ache/ + +# Others +ClientBin/ +~$* +*.dbmdl +*.dbproj.schemaview +*.jfm +*.pfx +*.publishsettings +orleans.codegen.cs + +# Including strong name files can present a security risk +# (https://github.com/github/gitignore/pull/2483#issue-259490424) +#*.snk + +# Since there are multiple workflows, uncomment next line to ignore bower_components +# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622) +#bower_components/ + +# RIA/Silverlight projects +Generated_Code/ + +# Backup & report files from converting an old project file +# to a newer Visual Studio version. Backup files are not needed, +# because we have git ;-) +_UpgradeReport_Files/ +Backup*/ +UpgradeLog*.XML +UpgradeLog*.htm +ServiceFabricBackup/ +*.rptproj.bak + +# SQL Server files +*.mdf +*.ldf +*.ndf + +# Business Intelligence projects +*.rdl.data +*.bim.layout +*.bim_*.settings +*.rptproj.rsuser + +# Microsoft Fakes +FakesAssemblies/ + +# GhostDoc plugin setting file +*.GhostDoc.xml + +# Node.js Tools for Visual Studio +.ntvs_analysis.dat + +# Visual Studio 6 build log +*.plg + +# Visual Studio 6 workspace options file +*.opt + +# Visual Studio 6 auto-generated workspace file (contains which files were open etc.) +*.vbw + +# Visual Studio LightSwitch build output +**/*.HTMLClient/GeneratedArtifacts +**/*.DesktopClient/GeneratedArtifacts +**/*.DesktopClient/ModelManifest.xml +**/*.Server/GeneratedArtifacts +**/*.Server/ModelManifest.xml +_Pvt_Extensions + +# Paket dependency manager +.paket/paket.exe +paket-files/ + +# FAKE - F# Make +.fake/ + +# JetBrains Rider +.idea/ +*.sln.iml + +# CodeRush +.cr/ + +# Python Tools for Visual Studio (PTVS) +__pycache__/ +*.pyc + +# Cake - Uncomment if you are using it +# tools/** +# !tools/packages.config + +# Tabs Studio +*.tss + +# Telerik's JustMock configuration file +*.jmconfig + +# BizTalk build output +*.btp.cs +*.btm.cs +*.odx.cs +*.xsd.cs + +# OpenCover UI analysis results +OpenCover/ + +# Azure Stream Analytics local run output +ASALocalRun/ + +# MSBuild Binary and Structured Log +*.binlog + +# NVidia Nsight GPU debugger configuration file +*.nvuser + +# MFractors (Xamarin productivity tool) working folder +.mfractor/ + +# DMG File +React-Proto.dmg +installers/ +assets/ +.git/ + +# End of https://www.gitignore.io/api/node,linux,macos,windows,visualstudio,yarn \ No newline at end of file diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..c9c1e4b --- /dev/null +++ b/.travis.yml @@ -0,0 +1,4 @@ +language: node_js +node_js: + - "8" + - "10" \ No newline at end of file diff --git a/LICENSE.md b/LICENSE.md new file mode 100644 index 0000000..0c15302 --- /dev/null +++ b/LICENSE.md @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) 2018 React-Proto + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/README.md b/README.md index 79a5b5d..8cefdc6 100644 --- a/README.md +++ b/README.md @@ -1,27 +1,116 @@ -# Quick Start +# React-Proto [![Build Status](https://travis-ci.com/React-Proto/react-proto.svg?branch=master)](https://travis-ci.com/React-Proto/react-proto) [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT) + + + +[React-Proto](https://react-proto.github.io/react-proto/) is a React application prototyping tool for developers and designers. + +React-Proto allows the user to visualize/setup their application architecture upfront and eject this architecture as application files either into a previous project or a new create-react-app project or a starter template from any repository. + +Download for [MacOS](https://github.com/React-Proto/react-proto/releases/download/v1.0.0/React-Proto-1.0.0.dmg), [Windows](https://github.com/React-Proto/react-proto/releases/download/v1.0.0/React-Proto.Web.Setup.1.0.0.exe), [Linux](https://github.com/React-Proto/react-proto/releases/download/v1.0.0/react-proto_1.0.0_amd64.deb). +* Mac users only: for now you might need to go to your security settings to allow the app run on your system as we do not have an Apple license yet. + +If you find any issues, [file issue](https://github.com/React-Proto/react-proto/issues) + +## How To Use + +- Application can be run from cli using ```react-proto``` command or by clicking on the application icon. + +- To start a new project, either import a mockup or start with a blank stage. + +- Add components you would like to create using the input, then drag the component frame into place and resize accordingly. + + + +- While building, you can use the icons in the toolbar to zoom, toggle draggability of the stage, update or remove an image, collapse the left container, and export your files. + +- For each component you have the ability to define whether your component will have state, the color of the frame component, and the ability to apply a parent component. + +- If you place a container around other components and can no longer access them, you can use the layer buttons in the corresponding dropdown menu to change layer order down or up. + + + +- In the right container, the props tab allows you to define props in key value pairs, as well as the necessary prop type. + +- Once you are finished, you can use the export button in the toolbar to choose from three options of how to export your files: + 1. Import your files into an existing project. Just choose the path where you would like to create your components folder. + 2. Use create-react-app to start a new project (the project will be under the "proto_app"). + 3. Clone your favorite Github repo to start a project with your favorite starter files. + + + +- Lastly, start building! + +## Authors + +[Blessing E Ebowe](https://www.linkedin.com/in/blessingebowe/) [@refinedblessing](https://github.com/refinedblessing) + +[Brian Taylor](https://www.linkedin.com/in/brianwtaylor/) [@brianwtaylor](https://github.com/brianwtaylor) + +[Erik Guntner](https://www.linkedin.com/in/erik-guntner-9aa324b9/) [@erikguntner](https://github.com/erikguntner) + +## Running Your Own Version + +- **Fork** and **Clone** Repository. + +- Open project directory + +``` bash +cd react-proto +``` + +- Install dependencies + +``` bash +yarn install +``` + +- Run application + +``` bash +yarn start +``` + +- For development experience... ``` bash -# Install dependencies -npm install +yarn dev +``` + +- and on another terminal + +``` bash +yarn electron +``` + +## Linting + +``` bash +yarn linter +``` + +## Testing + +```bash +yarn test +``` + +## Built With + +- [React](https://reactjs.org/) - Framework for building user interaces. +- [Redux](https://redux.js.org/) - Predictable state container for JavaScript apps. +- [Electron](https://electronjs.org/) - Cross-platform desktop apps with HTML, CSS and JS. +- [KonvaJS](https://konvajs.github.io/) - HTML5 2d canvas library for desktop and mobile applications. +- [React-Sortable-Tree](https://github.com/frontend-collective/react-sortable-tree#options) - Drag-and-drop sortable component for nested data and hierarchies. -# Build files -npm run build +## Acknowledgments -# Run application with electron -npm run electron +### Logo Design -# Run application on browser -npm run dev_server +[Clariz Mariano](www.clarizmariano.com) [@havengoer](https://github.com/havengoer) -# Clear build folder -npm run clear_build +[Joe Thel](https://www.linkedin.com/in/joe-thel/) [@fakemonster](https://github.com/fakemonster) -# Run Linter -npm run linter -# For development environment with electron.... -npm run start +## License -# on another terminal -npm run electron -``` \ No newline at end of file +This project is licensed under the MIT License - see the [LICENSE.md](https://github.com/React-Proto/react-proto/blob/master/LICENSE.md) file for details. diff --git a/__mocks__/electron.js b/__mocks__/electron.js new file mode 100644 index 0000000..fb0dee4 --- /dev/null +++ b/__mocks__/electron.js @@ -0,0 +1,6 @@ + +const ipcRenderer = { + on: jest.fn(), +}; + +export default ipcRenderer; diff --git a/assets/dragging.gif b/assets/dragging.gif new file mode 100644 index 0000000..42b7d49 Binary files /dev/null and b/assets/dragging.gif differ diff --git a/assets/export.gif b/assets/export.gif new file mode 100644 index 0000000..d840cc1 Binary files /dev/null and b/assets/export.gif differ diff --git a/assets/hierarchy.gif b/assets/hierarchy.gif new file mode 100644 index 0000000..a7b8f07 Binary files /dev/null and b/assets/hierarchy.gif differ diff --git a/docs/assets/proto-logo.png b/docs/assets/proto-logo.png new file mode 100644 index 0000000..f9871a5 Binary files /dev/null and b/docs/assets/proto-logo.png differ diff --git a/docs/assets/react-proto-logo.png b/docs/assets/react-proto-logo.png new file mode 100644 index 0000000..0f56749 Binary files /dev/null and b/docs/assets/react-proto-logo.png differ diff --git a/docs/index.html b/docs/index.html index ca52f07..d704a68 100644 --- a/docs/index.html +++ b/docs/index.html @@ -15,20 +15,17 @@