Please support us by starring us on
18 |
19 | Github
20 |
21 |
22 |
23 |
25 |
26 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/src/actions/actionTypes.jsx:
--------------------------------------------------------------------------------
1 | /*
2 | This file declares the action types to be used by store.
3 | */
4 |
5 | export const ADD_TABLE = "ADD_TABLE";
6 | export const EDIT_TABLE = "EDIT_TABLE";
7 | export const SAVE_TABLE = "SAVE_TABLE";
8 | export const EDIT_TABLE_NAME = "EDIT_TABLE_NAME";
9 | export const DELETE_TABLE = "DELETE_TABLE";
10 | export const IMPORT_TABLES = "IMPORT_TABLES";
11 |
12 | export const EDIT_FIELD = "EDIT_FIELD";
13 | export const ADD_FIELD = "ADD_FIELD";
14 | export const DELETE_FIELD = "DELETE_FIELD";
15 | export const EDIT_RELATIONS = "EDIT_RELATIONS";
16 |
17 | export const SET_POP_UP = "SET_POP_UP";
18 | export const SET_VIEW = "SET_VIEW";
19 |
20 | export const HIDE_DISPLAY_ERROR = "HIDE_DISPLAY_ERROR";
21 | export const THROTTLE_DISPLAY_ERROR = "THROTTLE_DISPLAY_ERROR";
22 |
23 | export const UPDATE_QUERIES = "UPDATE_QUERIES";
24 |
25 | export const ADD_APOLLO_SERVER_URI = "ADD_APOLLO_SERVER_URI";
26 |
--------------------------------------------------------------------------------
/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | ProtoGraphQL
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2019 protographql
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/src/components/view/mainView.jsx:
--------------------------------------------------------------------------------
1 | import React, { useContext } from 'react';
2 | import SchemaView from '../../components/view/schemaView';
3 | import CodeView from '../../components/view/codeView';
4 | import VisualizeView from '../../components/view/visualizeView';
5 | // import GraphiqlView from './graphiqlView'; // removes unused comoponent
6 | import TableForm from '../popup/tableForm';
7 | import { Store } from '../../state/store';
8 | import TestsView from './testsView';
9 |
10 | function MainView() {
11 | /*
12 | -> connects the application to the context (utilized by Hooks in React) and facilitates the ability to
13 | update the context of the application
14 | -> the context is initialized by useContext() and specified by Store which is found
15 | in /components/state/store.jsx
16 | */
17 | const { state: { view, popUp } } = useContext(Store);
18 | return (
19 |
2 |
3 | # ProtoGraphQL ver. 2.0
4 |
5 | *** The latest release of ProtoGraphQL includes a new view that can jumpstart your query testing with the Jest framework and the ability to import tables from an existing database. ***
6 |
7 | ProtoGraphQL is a **prototyping tool** that empowers developers to build and visualize GraphQL schemas and queries without writing any code. Once users import or input their relational database tables, ProtoGraphQL can generate an export package that allows developers to spin up a customized and functional GraphQL Apollo Server as an independent app. (As of version 2.0 custom mutations are also supported!)
8 |
9 | ProtoGraphQL is in beta. Please post any issues to our GitHub - we are actively looking for opportunities to improve this tool and we welcome your feedback.
10 |
11 | Upcoming releases will improve the “Schema” view and add support for NoSQL databases.
12 |
13 | ## Getting Started:
14 |
15 | 1. Download: [Mac](https://github.com/oslabs-beta/protographql/releases/download/v1.0.0-beta/ProtoGraphQL-1.0.0.dmg), [Windows](https://github.com/oslabs-beta/protographql/releases/download/v1.0.0-beta/ProtoGraphQL.Setup.1.0.0.exe), [Linux](https://github.com/oslabs-beta/protographql/releases/download/v1.0.0-beta/protographql_1.0.0_amd64.deb)
16 |
17 | 2. Extract file
18 |
19 | 3. Run application
20 |
21 | ## How to Use:
22 |
23 | 1. When the application starts you will be given the option to either **CREATE YOUR TABLES** or **IMPORT TABLES**. To create your tables, click the “Add Table” button in the lower left corner of the screen. When your config is complete, click **Save**. When importing, simply paste your database URI in the field and click the **Connect** button. In either case, your tables will be displayed in the main view when you are done.
24 |
25 |
26 |
27 | 2. Navigate to the alternate views within the app using the tabs on the left: **Schema**, **Code**, **Visualize**, and **Tests**
28 |
29 | * **Schema** - view, edut or delete tables you've added.
30 |
31 |