Skip to content

oslabs-beta/ghost

Repository files navigation

ghost

Getting Started

First, please log into Amazon Web Services (AWS). Ghost works best when the AWS Command Line Interface (CLI) is installed on your computer.

Log into AWS

Install AWS CLI


Configuration

Configure the AWS CLI with your user profile in your terminal of choice.

aws configure

You will need your security credentials (Access Key ID and Secret Access Key), AWS Region, and output format. You can just press 'enter' if the default values match yours.

AWS Access Key ID:
AWS Secret Access Key:
Default region name [us-west-1]:
Default output format [json]:

Run the Server

To run the server, clone the GitHub repository to your computer. Navigate to the local directory and install the required Node modules.

git clone https://github.com/oslabs-beta/ghost.git
cd ghost
npm install

Once completed, run the server.

npm run server

Download and Launch

Download ghost from the GitHub repository under 'Releases.' Currently, there are releases for Mac OS and Windows.

On MacOS:

  • Unzip the downloaded file
  • Double click to open the 'ghost-darwin-x64' file
  • Right click on the ghost app (do not double click)
  • Click 'Open' on the popup to launch the app
  • On Windows:

  • Unzip the downloaded file
  • Double click on the ghost app
  • Click 'More Info', then a 'Run Anyways' button should appear
  • Click 'Run Anyways' to launch the app
  • Now that ghost is ready to go, let's get started!


    Metrics

    To view any graphs or data, you need to first select the Lambda Function you would like to view metrics for. Press 'Your Lambda Functions' on the left menu, then click the 'METRICS' button under the Lambda Function. Here are some basic metrics of your Lambda Function.

    For customized graphs and to see more metrics, select the Lambda Function you would like to create a custom graph for and view its metrics. Then click the orange 'CREATE GRAPH' button in the top right corner to display the graph creation user interface. Enter a title, select a metric, graph type, date/time range (end time must be within 24 hours from the start time), and then hit the 'SUBMIT' button.


    Pricing

    To view the pricing calculator and previous billing history, first select the Lambda Function you would like to view pricing data for from the left menu. Click the 'PRICING' button under the specific Lambda Function. This will bring up the pricing calculator. Select type, memory size, storage size, billed duration, and total invocations. Click the 'CALCULATE PRICE' button when you are ready.

    To view past billing history, click the 'HISTORY' tab when you are in the pricing calculator user interface for that specific Lambda function. Select your month and year then click 'SUBMIT'. Your previous total cost for that month will be displayed.


    Permissions

    Select the Lambda Function you would like to view/edit permissions for in the left menu. Under the selected Lambda Function, click the 'PERMISSIONS' button. This will show the permissions UI and 'LIST OF PERMISSIONS' is the default tab. Here you can view all your permissions' information. If you want to delete any, simply click on the 'DELETE PERMISSION' button under the specific permission you wish to delete.

    To add permissions, click on the 'ADD NEW PERMISSIONS' tab on top. Enter a Statement ID (cannot contain spaces), select an action, add a Principal, Principal Organization ID (optional), and then click 'ADD PERMISSION'. Your new permission has been added and can be seen on the 'LIST OF PERMISSIONS' tab now!


    Technologies Used

    • Electron
    • TypeScript
    • React
    • React Router
    • Node.js
    • Express
    • Chart.js
    • MaterialUI
    • Tailwind CSS
    • Jest
    • Supertest

    Report an Issue

    Encountered a problem with our application? Submit a ticket to our GitHub under 'Issues.' Please be as descriptive as possible.


    Contribute

    Interested in contributing to ghost or the Open Source community? The following is a list of features that the ghost team has either started or would like to implement. If you also have additional ideas, feel free to iterate off of ghost and implement those features!

    • Additional testing
    • Alerts
    • Search for your function

    To contribute:

    • Fork the repository to your GitHub account.
    • Clone the project on your machine.
    • Create a branch for the issue you would like to work on.
    • Once completed, submit a pull request. A member of our team will review it as soon as we can!

    Meet the Team