Skip to content

Commit

Permalink
Merge release to main (#844)
Browse files Browse the repository at this point in the history
* Added 'How Wasp got to 1k stars on gh' blog post.

* Docs update for Hacktoberfest (#731)

* Initial docs update for Hacktoberfest

* Contributing.md update

* Update "Before you begin" section

* Update web/docs/tutorials/dev-excuses-app/creating-the-project.md

Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>

* Update web/docs/tutorials/dev-excuses-app/updating-main-page-js-file.md

Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>

* Update CONTRIBUTING.md

Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>

* Update web/docs/tutorials/dev-excuses-app/modifying-main-wasp-file.md

Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>

* Update the section names

* Update CONTRIBUTING.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update web/docs/tutorials/dev-excuses-app/updating-main-page-js-file.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update web/docs/contributing.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update web/docs/contributing.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update web/docs/contributing.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Add Discord component and some minor fixes

* Add unclear notice

* Update web/docs/pick-a-tutorial.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update web/docs/tutorials/dev-excuses-app.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update web/docs/tutorials/dev-excuses-app.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update web/docs/tutorials/dev-excuses-app.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update CONTRIBUTING.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update web/docs/tutorials/dev-excuses-app/modifying-main-wasp-file.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update web/docs/getting-started.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update web/docs/tutorials/dev-excuses-app/modifying-main-wasp-file.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Review updates

* Update web/docs/tutorials/dev-excuses-app/modifying-main-wasp-file.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update suggestion

* Update web/docs/tutorials/dev-excuses-app/perform-migration-and-run.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update web/docs/tutorials/dev-excuses-app/perform-migration-and-run.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update

* Update web/docs/tutorials/dev-excuses-app/updating-main-page-js-file.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update CONTRIBUTING.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Remove lines

* Update CONTRIBUTING.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update CONTRIBUTING.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update CONTRIBUTING.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update getExcuse function

* Update page naming convention

* Remove Main.css

* Update migration text

* Update image

* Update "Wasp's compiler is built with Haskell"

* Add tutorials description

* Update web/docs/pick-a-tutorial.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update Discord link and tutorial ending

* Update links

Co-authored-by: mkhamrov <mkhamrov@redhat.com>
Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>
Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update to-do app tutorial links

* Fixed a bit 'how to get started with haskell in 2022' blog post.

* Small fix of 'Pick a Tutorial' doc page. (#737)

* Linked Copilot post to its HN discussion.

* Added Farnance showcase blog post.

* Improved messaging about node version in getting started page in docs.

* Added Beta announcement bar to the landing page and docs.

* Update Docusaurus (#797)

* Adds Fly.io to deployment guide (#803)

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>
Co-authored-by: vincanger <70215737+vincanger@users.noreply.github.com>

* Added Alpha Testing Program: post-mortem blog post.

* Update features.md newUser snippets

more explicit examples

* add railway deployment (#818)

* Added Hacktoberfest 2022 reflections blog post.

* update Railway client deployment

* add railway proxy warning

* Update image thumbnail (#832)

Co-authored-by: mkhamrov <mkhamrov@redhat.com>

* Added Beta Launch Week announcement post.

* small blog fix, updated thumbnail img.

* Added Michael Curry (cursorial) use case blog post.

* Added Erlis Kllogjri's Amicus use case blog post.

* Fixed some grammar errors in use case posts.

* first pass at both beta launch blog posts

* minor edits

* clean up Features, GoogleAuth, & Deploy docs (#820)

* add railway deployment

* clean up Features and GoogleAuth docs

* Update web/docs/language/features.md

Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>
Co-authored-by: Martin Sosic <sosic.martin@gmail.com>

* Created new landing page for Beta.

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>
Co-authored-by: Max Khamrovskyi <maksim36ua@gmail.com>
Co-authored-by: mkhamrov <mkhamrov@redhat.com>
Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>
Co-authored-by: Martin Sosic <sosic.martin@gmail.com>
Co-authored-by: Shayne Czyzewski <523636+shayneczyzewski@users.noreply.github.com>
Co-authored-by: vincanger <70215737+vincanger@users.noreply.github.com>
Co-authored-by: shayneczyzewski <shayne.czyzewski@gmail.com>
  • Loading branch information
9 people committed Nov 26, 2022
1 parent 1f7f900 commit 7c7e6b7
Show file tree
Hide file tree
Showing 161 changed files with 22,536 additions and 14,359 deletions.
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@

# editor related
.idea/
*.swo
*.swp

# macOS related
.DS_Store
10 changes: 2 additions & 8 deletions examples/tutorials/ItWaspsOnMyMachine/src/server/queries.js
Original file line number Diff line number Diff line change
@@ -1,14 +1,8 @@
import axios from 'axios';

export const getExcuse = async () => {
return axios
.get('https://api.devexcus.es/')
.then(res => {
return res.data;
})
.catch(error => {
console.error(error);
});
const response = await axios.get('https://api.devexcus.es/')
return response.data
}

export const getAllSavedExcuses = async (_args, context) => {
Expand Down
3 changes: 3 additions & 0 deletions project-page/.eslintrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"extends": "next/core-web-vitals"
}
36 changes: 36 additions & 0 deletions project-page/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.

# dependencies
/node_modules
/.pnp
.pnp.js

# testing
/coverage

# next.js
/.next/
/out/

# production
/build

# misc
.DS_Store
*.pem

# debug
npm-debug.log*
yarn-debug.log*
yarn-error.log*
.pnpm-debug.log*

# local env files
.env*.local

# vercel
.vercel

# typescript
*.tsbuildinfo
next-env.d.ts
34 changes: 34 additions & 0 deletions project-page/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
This is a [Next.js](https://nextjs.org/) project bootstrapped with [`create-next-app`](https://github.com/vercel/next.js/tree/canary/packages/create-next-app).

## Getting Started

First, run the development server:

```bash
npm run dev
# or
yarn dev
```

Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.

You can start editing the page by modifying `pages/index.js`. The page auto-updates as you edit the file.

[API routes](https://nextjs.org/docs/api-routes/introduction) can be accessed on [http://localhost:3000/api/hello](http://localhost:3000/api/hello). This endpoint can be edited in `pages/api/hello.js`.

The `pages/api` directory is mapped to `/api/*`. Files in this directory are treated as [API routes](https://nextjs.org/docs/api-routes/introduction) instead of React pages.

## Learn More

To learn more about Next.js, take a look at the following resources:

- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API.
- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial.

You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js/) - your feedback and contributions are welcome!

## Deploy on Vercel

The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js.

Check out our [Next.js deployment documentation](https://nextjs.org/docs/deployment) for more details.
102 changes: 102 additions & 0 deletions project-page/components/Benefits.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
import classNames from 'classnames'
import { Terminal, Layers, Coffee, Code } from 'react-feather'

import SectionContainer from './Layouts/SectionContainer'

import styles from '../styles/index.module.css'

const Lang = () => (
<>
<span className='underline decoration-yellow-500 font-bold'>
language
</span>
</>
)

const Benefit = ({ Icon, title, description }) => (
<div className='mb-10 md:mb-0 space-y-4'>
<div className='flex items-center'>
<div
className={`
inline-flex h-8 w-8 rounded-md
items-center justify-center
text-yellow-500 bg-neutral-700
`}
>
<Icon size={20} />
</div>
<dt className='ml-4'>
{ title }
</dt>
</div>
<p className=''>
{ description }
</p>
</div>
)

const Benefits = () => {
return (
<SectionContainer className='space-y-16'>
<div className='grid grid-cols-12'>
<div className='col-span-12 text-center'>
<h2 className='text-xl lg:text-2xl text-neutral-700 mb-4'>
Yet another web framework. Except it is
a <Lang />.
</h2>
<p className='text-neutral-500'>
Don&apos;t worry, it takes less than 30 minutes to learn.
</p>
</div>
</div>

<dl className='grid grid-cols-1 lg:grid-cols-3 md:gap-16 lg:gap-x-8 xl:gap-x-24'>
<Benefit
Icon={Layers}
title='Truly full-stack'
description={`
When we say full-stack, we really mean it. Wasp has you covered from front-end,
back-end and database to deployment. Zero config required to get started.
`}
/>

<Benefit
Icon={Coffee}
title='The wheel can take a break'
description={`
No reinventing the wheel here. Write your code in React & Node.js as you are used to,
along with your favourite NPM packages.
`}
/>

<Benefit
Icon={Code}
title='Less boilerplate'
description={`
The language approach allows us to immensely improve developer experience.
E.g., full-stack auth takes only 5 lines of code.
`}
/>
</dl>
</SectionContainer>
)
}

const BenefitsWithSkewedBorder = () => (
<div className='relative'>
<div className={classNames(styles.sectionSkewedContainer)}>
<div
className={classNames(
styles.sectionSkewed,
'border-t border-b border-yellow-500/25 bg-neutral-100/50'
)}
>
</div>
</div>
<div className='relative'>
<Benefits />
</div>
</div>
)

export default BenefitsWithSkewedBorder
44 changes: 44 additions & 0 deletions project-page/components/DarkModeToggle.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
import { useState } from 'react'
import { Sun, Moon } from 'react-feather'

const DarkModeToggle = () => {
const [isDarkMode, setIsDarkMode] = useState(false)

const toggleDarkMode = () => {
setIsDarkMode(!isDarkMode)
}

return (
<div className='flex items-end'>
<Sun strokeWidth={2} size={22} className='text-neutral-500' />
<button
type='button'
aria-pressed='false'
className={`
relative inline-flex
h-6 w-11 mx-3 flex-shrink-0 cursor-pointer
rounded-full border-2 border-transparent
bg-neutral-500
transition-colors duration-200 ease-in-out focus:outline-none
`}
onClick={() => toggleDarkMode()}
>
<span
aria-hidden='true'
className={`
${isDarkMode ? 'translate-x-5' : 'translate-x-0'}
inline-block h-5 w-5
bg-white shadow-lg rounded-full ring-0
transform transition duration-200 ease-in-out
`}
/>
</button>

<Moon strokeWidth={2} size={22} className='text-neutral-500' />
</div>


)
}

export default DarkModeToggle
92 changes: 92 additions & 0 deletions project-page/components/Faq.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
import { useState } from 'react'
import Link from 'next/link'
import { ChevronDown, ChevronRight } from 'react-feather'

import SectionContainer from './Layouts/SectionContainer'

const faqs = [
{
question: 'How is Wasp different from Next.js / Nuxt.js / Gatsby?',
answer: <p>
Next.js is front-end solution only, focused on static websites. This is some
longer text so I can see how it behaves.<br/>

Maybe I should put here component so I have freedom in formatting, putting URLs, etc?
This is some test <Link href='/'><a>url</a></Link>
</p>
},
{
question: 'How is Wasp different from Ruby on Rails, Django, etc?',
answer: 'Those are all back-end frameworks. Wasp is full-stack!'
},
{
question: 'How hard is it to learn Wasp?',
answer: 'Well, it is actually really easy!'
},
{
question: 'Do you support only React currently?',
answer: 'Well, it is actually really easy!'
}
]

const FaqItem = ({ keyP, faq }) => {

const [isExpanded, setIsExpanded] = useState(false)

return (
<div className='py-6'>
<dt key={keyP} className='text-base text-neutral-700'>
<button
className='text-left w-full flex items-center justify-between'
onClick={() => { setIsExpanded(!isExpanded) }}
>
<span>{faq.question}</span>
<div className='ml-6 text-yellow-500'>
{isExpanded ? (
<ChevronDown size={20} />
) : (
<ChevronRight size={20} />
)}
</div>
</button>
</dt>
{isExpanded && (
<dd className='mt-2 text-neutral-500'>
{faq.answer}
</dd>
)}
</div>
)
}

const Faq = () => {
return (
<SectionContainer>
<div className='grid grid-cols-12'>
<div className='col-span-12 text-center'>
<h2 className='text-xl lg:text-2xl text-neutral-700 mb-4'>
Frequently asked questions
</h2>
<p className='text-neutral-500'>
For anything not covered here, join&nbsp;
<a
href='https://discord.gg/rzdnErX'
className='underline decoration-2 decoration-yellow-500 font-medium'
>
our Discord
</a>!
</p>
</div>
</div>

<dl className='mt-6 max-w-3xl mx-auto divide-y divide-neutral-300'>
{faqs.map((faq, idx) => (
<FaqItem keyP={idx} key={idx} faq={faq} />
))}
</dl>

</SectionContainer>
)
}

export default Faq
Loading

0 comments on commit 7c7e6b7

Please sign in to comment.