Renamed Atlas to Outline

This commit is contained in:
Jori Lallo
2017-11-09 00:20:22 -08:00
parent 12d20611d6
commit f5c51a96f0
20 changed files with 47 additions and 47 deletions

View File

@ -2,8 +2,8 @@
# #
# Please use `openssl rand -hex 32` to create SEQUELIZE_SECRET # Please use `openssl rand -hex 32` to create SEQUELIZE_SECRET
DATABASE_URL=postgres://user:pass@example.com:5432/atlas DATABASE_URL=postgres://user:pass@example.com:5432/outline
DATABASE_URL_TEST=postgres://user:pass@example.com:5432/atlas-test DATABASE_URL_TEST=postgres://user:pass@example.com:5432/outline-test
PORT=3000 PORT=3000
REDIS_URL=redis://localhost:6379 REDIS_URL=redis://localhost:6379
SEQUELIZE_SECRET=F0E5AD933D7F6FD8F4DBB3E038C501C052DC0593C686D21ACB30AE205D2F634B SEQUELIZE_SECRET=F0E5AD933D7F6FD8F4DBB3E038C501C052DC0593C686D21ACB30AE205D2F634B

View File

@ -1,4 +1,4 @@
Copyright (c) 2017 Atlas (https://www.beautifulatlas.com/) and individual contributors. Copyright (c) 2017 Outline (https://www.getoutline.com/) and individual contributors.
All rights reserved. All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
@ -8,7 +8,7 @@ Redistribution and use in source and binary forms, with or without modification,
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution. documentation and/or other materials provided with the distribution.
3. Neither the name of the Atlas nor the names of its contributors may be used to endorse or promote products derived from this software 3. Neither the name of the Outline nor the names of its contributors may be used to endorse or promote products derived from this software
without specific prior written permission. without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,

View File

@ -1,5 +1,5 @@
{ {
"name": "atlas", "name": "outline",
"scripts": { "scripts": {
"postdeploy": "yarn build && yarn sequelize:migrate" "postdeploy": "yarn build && yarn sequelize:migrate"
}, },

View File

@ -14,13 +14,13 @@ function getPathFromUrl(href: string) {
} }
} }
function isAtlasUrl(href: string) { function isOutlineUrl(href: string) {
if (href[0] === '/') return true; if (href[0] === '/') return true;
try { try {
const atlas = new URL(BASE_URL); const outline = new URL(BASE_URL);
const parsed = new URL(href); const parsed = new URL(href);
return parsed.hostname === atlas.hostname; return parsed.hostname === outline.hostname;
} catch (err) { } catch (err) {
return false; return false;
} }
@ -30,7 +30,7 @@ export default function Link({ attributes, node, children, readOnly }: Props) {
const href = node.data.get('href'); const href = node.data.get('href');
const path = getPathFromUrl(href); const path = getPathFromUrl(href);
if (isAtlasUrl(href) && readOnly) { if (isOutlineUrl(href) && readOnly) {
return <InternalLink {...attributes} to={path}>{children}</InternalLink>; return <InternalLink {...attributes} to={path}>{children}</InternalLink>;
} else { } else {
return <a {...attributes} href={href} target="_blank">{children}</a>; return <a {...attributes} href={href} target="_blank">{children}</a>;

View File

@ -102,7 +102,7 @@ type Props = {
return ( return (
<Container column auto> <Container column auto>
<Helmet> <Helmet>
<title>Atlas</title> <title>Outline</title>
<meta <meta
name="viewport" name="viewport"
content="width=device-width, initial-scale=1.0" content="width=device-width, initial-scale=1.0"

View File

@ -7,7 +7,7 @@ type Props = {
}; };
const PageTitle = ({ title }: Props) => ( const PageTitle = ({ title }: Props) => (
<Helmet><title>{`${title} - Atlas`}</title></Helmet> <Helmet><title>{`${title} - Outline`}</title></Helmet>
); );
export default PageTitle; export default PageTitle;

View File

@ -56,7 +56,7 @@ type Props = {
return ( return (
<form onSubmit={this.handleSubmit}> <form onSubmit={this.handleSubmit}>
<HelpText> <HelpText>
Collections are for grouping your Atlas. They work best when organized Collections are for grouping your Outline. They work best when organized
around a topic or internal team Product or Engineering for example. around a topic or internal team Product or Engineering for example.
</HelpText> </HelpText>
<Input <Input

View File

@ -9,7 +9,7 @@ function KeyboardShortcuts() {
return ( return (
<Flex column> <Flex column>
<HelpText> <HelpText>
Atlas is designed to be super fast and easy to use. Outline is designed to be super fast and easy to use.
All of your usual keyboard shortcuts work here, and there All of your usual keyboard shortcuts work here, and there
{"'"} {"'"}
s Markdown too. s Markdown too.

View File

@ -31,8 +31,8 @@ import SlackAuthLink from 'components/SlackAuthLink';
<Section> <Section>
<SectionLabel>Slack</SectionLabel> <SectionLabel>Slack</SectionLabel>
<HelpText> <HelpText>
Connect Atlas to your Slack to instantly search for your documents Connect Outline to your Slack to instantly search for your documents
using <Code>/atlas</Code> command. using <Code>/outline</Code> command.
</HelpText> </HelpText>
<SlackAuthLink <SlackAuthLink
@ -52,7 +52,7 @@ import SlackAuthLink from 'components/SlackAuthLink';
<Section> <Section>
<SectionLabel>API Access</SectionLabel> <SectionLabel>API Access</SectionLabel>
<HelpText> <HelpText>
Create API tokens to hack on your Atlas. Create API tokens to hack on your Outline.
Learn more in <Link to="/developers">API documentation</Link>. Learn more in <Link to="/developers">API documentation</Link>.
</HelpText> </HelpText>

View File

@ -1,15 +1,15 @@
# Atlas API # Outline API
_Our API is currently in beta and we might make minor adjustments._ _Our API is currently in beta and we might make minor adjustments._
## Making requests ## Making requests
Atlas' API follows JSON RPC style conventions where each API endpoint is a method on `https://www.beautifulatlas.com/api/<METHOD>`. Each request needs to be made using HTTPS and both `GET` and `POST` (recommended) methods are supported. Outline's API follows JSON RPC style conventions where each API endpoint is a method on `https://www.getoutline.com/api/<METHOD>`. Each request needs to be made using HTTPS and both `GET` and `POST` (recommended) methods are supported.
For `GET` requests query string parameters are expected (e.g. `/api/document.info?id=...&token=...`). When making `POST` requests, request parameters are parsed depending on `Content-Type` header. To make a call using JSON payload, one must pass `Content-Type: application/json` header: For `GET` requests query string parameters are expected (e.g. `/api/document.info?id=...&token=...`). When making `POST` requests, request parameters are parsed depending on `Content-Type` header. To make a call using JSON payload, one must pass `Content-Type: application/json` header:
```shell ```shell
curl 'https://www.beautifulatlas.com/api/documents.info?id=atlas-api-NTpezNwhUP'\ curl 'https://www.getoutline.com/api/documents.info?id=outline-api-NTpezNwhUP'\
-H 'authorization: Bearer <API KEY>'\ -H 'authorization: Bearer <API KEY>'\
-H 'content-type: application/json'\ -H 'content-type: application/json'\
-H 'accept: application/json' -H 'accept: application/json'
@ -17,9 +17,9 @@ curl 'https://www.beautifulatlas.com/api/documents.info?id=atlas-api-NTpezNwhUP'
## Authentication ## Authentication
To access private API endpoints, you must provide a valid API key. You can create new API keys in your [account settings](https://www.beautifulatlas.com/settings). Be careful when handling your keys as they give access to all of your documents. To access private API endpoints, you must provide a valid API key. You can create new API keys in your [account settings](https://www.getoutline.com/settings). Be careful when handling your keys as they give access to all of your documents.
To authenticate with Atlas API, you can supply the API key as a header (`Authorization: Bearer <API KEY>`) or as part of the payload using `token` parameter. To authenticate with Outline API, you can supply the API key as a header (`Authorization: Bearer <API KEY>`) or as part of the payload using `token` parameter.
Some API endpoints allow unauhenticated requests for public resources and they can be called without an API key. Some API endpoints allow unauhenticated requests for public resources and they can be called without an API key.
@ -42,7 +42,7 @@ This method returns the information for currently logged in user.
#### Arguments #### Arguments
`https://www.beautifulatlas.com/api/user.info` `https://www.getoutline.com/api/user.info`
Parameter | Description Parameter | Description
------------ | ------------- ------------ | -------------
@ -52,11 +52,11 @@ Parameter | Description
### `user.s3Upload` - Gets S3 upload credentials ### `user.s3Upload` - Gets S3 upload credentials
You can upload small files and images as part of your documents. All files are stored using Amazon S3. Instead of uploading files to Atlas, you need to upload them directly to S3 with special credentials which can be obtained through this endpoint. You can upload small files and images as part of your documents. All files are stored using Amazon S3. Instead of uploading files to Outline, you need to upload them directly to S3 with special credentials which can be obtained through this endpoint.
#### Arguments #### Arguments
`https://www.beautifulatlas.com/api/user.s3Upload` `https://www.getoutline.com/api/user.s3Upload`
Parameter | Description Parameter | Description
------------ | ------------- ------------ | -------------
@ -73,7 +73,7 @@ List all your document collections.
#### Arguments #### Arguments
`https://www.beautifulatlas.com/api/collections.list` `https://www.getoutline.com/api/collections.list`
Parameter | Description Parameter | Description
------------ | ------------- ------------ | -------------
@ -89,7 +89,7 @@ Returns detailed information on a document collection.
#### Arguments #### Arguments
`https://www.beautifulatlas.com/api/collections.info` `https://www.getoutline.com/api/collections.info`
Parameter | Description Parameter | Description
------------ | ------------- ------------ | -------------
@ -100,14 +100,14 @@ Parameter | Description
### `collections.create` - Create a document collection ### `collections.create` - Create a document collection
Creates a new document collection. Atlas supports two types of collections: Creates a new document collection. Outline supports two types of collections:
- `atlas` - Structured collection with a navigation tree - `atlas` - Structured collection with a navigation tree
- `journal` - Chronological collection of documents - `journal` - Chronological collection of documents
#### Arguments #### Arguments
`https://www.beautifulatlas.com/api/collections.create` `https://www.getoutline.com/api/collections.create`
Parameter | Description Parameter | Description
------------ | ------------- ------------ | -------------
@ -124,7 +124,7 @@ Collection navigation can be re-organized by sending a modified version of the n
#### Arguments #### Arguments
`https://www.beautifulatlas.com/api/collections.updateNavigationTree` `https://www.getoutline.com/api/collections.updateNavigationTree`
Parameter | Description Parameter | Description
------------ | ------------- ------------ | -------------
@ -139,11 +139,11 @@ Parameter | Description
This method returns information for a document with a specific ID. Following identifiers are allowed: This method returns information for a document with a specific ID. Following identifiers are allowed:
- UUID - `id` field of the document - UUID - `id` field of the document
- URI identifier - Human readable identifier used in Atlas URLs (e.g. `atlas-api-i48ZEZc5zjXndcP`) - URI identifier - Human readable identifier used in Outline URLs (e.g. `outline-api-i48ZEZc5zjXndcP`)
#### Arguments #### Arguments
`https://www.beautifulatlas.com/api/documents.info` `https://www.getoutline.com/api/documents.info`
Parameter | Description Parameter | Description
------------ | ------------- ------------ | -------------
@ -158,7 +158,7 @@ This methods allows you to search all of your documents with keywords.
#### Arguments #### Arguments
`https://www.beautifulatlas.com/api/documents.search` `https://www.getoutline.com/api/documents.search`
Parameter | Description Parameter | Description
------------ | ------------- ------------ | -------------
@ -173,7 +173,7 @@ This method allows you to publish a new document under an existing collection. I
#### Arguments #### Arguments
`https://www.beautifulatlas.com/api/documents.create` `https://www.getoutline.com/api/documents.create`
Parameter | Description Parameter | Description
------------ | ------------- ------------ | -------------
@ -191,7 +191,7 @@ Delete a document and all of its child documents if any.
#### Arguments #### Arguments
`https://www.beautifulatlas.com/api/documents.delete` `https://www.getoutline.com/api/documents.delete`
Parameter | Description Parameter | Description
------------ | ------------- ------------ | -------------

View File

@ -13,7 +13,7 @@ class ApiClient {
constructor(options: Options = {}) { constructor(options: Options = {}) {
this.baseUrl = options.baseUrl || '/api'; this.baseUrl = options.baseUrl || '/api';
this.userAgent = 'AtlasFrontend'; this.userAgent = 'OutlineFrontend';
} }
fetch = ( fetch = (

View File

@ -1,5 +1,5 @@
{ {
"name": "Atlas", "name": "Outline",
"private": true, "private": true,
"main": "index.js", "main": "index.js",
"scripts": { "scripts": {
@ -45,7 +45,7 @@
}, },
"repository": { "repository": {
"type": "git", "type": "git",
"url": "git+ssh://git@github.com/jorilallo/atlas.git" "url": "git+ssh://git@github.com/outline/outline.git"
}, },
"dependencies": { "dependencies": {
"@tommoor/slate-drop-or-paste-images": "0.5.1", "@tommoor/slate-drop-or-paste-images": "0.5.1",

View File

@ -1,6 +1,6 @@
export default function subdomainRedirect(options) { export default function subdomainRedirect(options) {
return async function subdomainRedirectMiddleware(ctx, next) { return async function subdomainRedirectMiddleware(ctx, next) {
if (ctx.headers.host === 'beautifulatlas.com') { if (ctx.headers.host === 'getoutline.com') {
ctx.redirect(`https://www.${ctx.headers.host}${ctx.path}`); ctx.redirect(`https://www.${ctx.headers.host}${ctx.path}`);
} else { } else {
return next(); return next();

View File

@ -11,7 +11,7 @@ export default function About() {
<title>About</title> <title>About</title>
</Helmet> </Helmet>
<Hero> <Hero>
<h1>About Atlas</h1> <h1>About Outline</h1>
<p> <p>
Just a proof of concept for multiple pages. Just a proof of concept for multiple pages.
</p> </p>

View File

@ -13,7 +13,7 @@ export default function Pricing() {
<Hero> <Hero>
<h1>Pricing</h1> <h1>Pricing</h1>
<p> <p>
Explore Atlas with a 14 day trial, free forever for teams smaller than 5. Explore Outline with a 14 day trial, free forever for teams smaller than 5.
</p> </p>
</Hero> </Hero>
</Grid> </Grid>

View File

@ -15,7 +15,7 @@ export default function Layout({ children }: Props) {
<html lang="en"> <html lang="en">
<head> <head>
<Helmet> <Helmet>
<title>Atlas</title> <title>Outline</title>
<meta name="viewport" content="width=device-width, initial-scale=1" /> <meta name="viewport" content="width=device-width, initial-scale=1" />
</Helmet> </Helmet>

View File

@ -6,7 +6,7 @@ import { color } from '../../../shared/styles/constants';
function Navigation() { function Navigation() {
return ( return (
<Nav> <Nav>
<Brand href="/">Atlas</Brand> <Brand href="/">Outline</Brand>
<Menu> <Menu>
<MenuItem><a href="/auth/slack">Sign In</a></MenuItem> <MenuItem><a href="/auth/slack">Sign In</a></MenuItem>
</Menu> </Menu>

View File

@ -2,7 +2,7 @@
<html> <html>
<head> <head>
<title>Atlas</title> <title>Outline</title>
<link href="/static/styles.css" rel="stylesheet"> <link href="/static/styles.css" rel="stylesheet">
</head> </head>
<style> <style>

View File

@ -2,7 +2,7 @@
<html> <html>
<head> <head>
<title>Atlas</title> <title>Outline</title>
<style> <style>
body, body,
html { html {

View File

@ -24,7 +24,7 @@ developmentWebpackConfig.plugins.push(new webpack.HotModuleReplacementPlugin());
developmentWebpackConfig.plugins.push(new webpack.NoErrorsPlugin()); developmentWebpackConfig.plugins.push(new webpack.NoErrorsPlugin());
developmentWebpackConfig.plugins.push( developmentWebpackConfig.plugins.push(
new HtmlWebpackPlugin({ new HtmlWebpackPlugin({
title: 'Atlas', title: 'Outline',
}) })
); );