Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release v0.2.8 #253

Merged
merged 25 commits into from
Jun 15, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
1cad52f
Merge branch 'main' into develop
akd-io May 30, 2023
abbcf69
Add Plausible plugin
akd-io May 31, 2023
4ba8a9c
Add app slots and env vars to plausible plugin
akd-io Jun 1, 2023
e684b1d
Add Plausible flag
akd-io Jun 1, 2023
fd06191
Fix website domain environment variable being optional
akd-io Jun 12, 2023
80c9531
Update generated footer URL
akd-io Jun 14, 2023
d59623d
Add nextConfig slots. Turn compilerOptions into nextConfig. Add todos.
akd-io Jun 14, 2023
450d0ff
Refactor maps and fix missing .reverse() wrt. nextConfig's wrappersEnd
akd-io Jun 14, 2023
c0797df
Fix Plausible nextConfig import
akd-io Jun 14, 2023
e13582c
Add todos to generated readme
akd-io Jun 14, 2023
14125a9
Add Plausible to form
akd-io Jun 14, 2023
0ea65ca
Update npm links
akd-io Jun 14, 2023
7ccb3d3
Merge pull request #239 from akd-io/feature/227-add-support-for-plaus…
akd-io Jun 14, 2023
0d78045
Add Plausible to e2e tests
akd-io Jun 14, 2023
b252916
Merge pull request #240 from akd-io/feature/236-add-github-link-to-npm
akd-io Jun 14, 2023
909e120
Merge pull request #241 from akd-io/feature/227-add-support-for-plaus…
akd-io Jun 14, 2023
186c9e8
Add dark mode to generated website
akd-io Jun 14, 2023
f3ac613
Merge pull request #245 from akd-io/feature/204-cli-add-dark-mode-to-…
akd-io Jun 14, 2023
590f274
Add Vercel and Netlify plugins
akd-io Jun 14, 2023
775cde2
Add scripts and technologies to sort orders
akd-io Jun 15, 2023
bae8cd4
Merge pull request #250 from akd-io/feature/247-add-support-for-netlify
akd-io Jun 15, 2023
af5c5b4
Add shields to website
akd-io Jun 15, 2023
0422bc2
Merge pull request #252 from akd-io/feature/add-shields-to-website
akd-io Jun 15, 2023
740b5d6
Bump version to 0.2.8
akd-io Jun 15, 2023
64ad6cc
Raise 10 minute timeouts to 15 minute timeouts
akd-io Jun 15, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 29 additions & 0 deletions apps/website/templates/LandingPage/components/Header.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,35 @@ export const HeaderSection = () => {
The ultimate starter kit for Next.js
</Text>
</Flex>
<Flex gap="8px" wrap="wrap">
<a
aria-label="Last commit"
href="https://github.com/akd-io/create-next-stack/commits/develop"
>
<img
alt=""
src="https://img.shields.io/github/last-commit/akd-io/create-next-stack/develop?style=flat-square"
/>
</a>
<a
aria-label="License"
href="https://github.com/akd-io/create-next-stack/blob/develop/packages/create-next-stack/LICENSE"
>
<img
alt=""
src="https://img.shields.io/npm/l/create-next-stack?color=44cc11&style=flat-square"
/>
</a>
<a
aria-label="NPM version"
href="https://www.npmjs.com/package/create-next-stack"
>
<img
alt=""
src="https://img.shields.io/npm/v/create-next-stack?style=flat-square"
/>
</a>
</Flex>
<SocialIcons />
</Flex>
</Section>
Expand Down
60 changes: 58 additions & 2 deletions apps/website/templates/LandingPage/components/TechnologiesForm.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,9 @@ type OptionKey =
| "githubActions"
| "formattingPreCommitHook"
| "reactQuery"
| "plausible"
| "vercel"
| "netlify"

const options = {
pnpm: { key: "pnpm", value: "pnpm", label: "pnpm" },
Expand Down Expand Up @@ -106,6 +109,21 @@ const options = {
value: "react-query",
label: "React Query",
},
plausible: {
key: "plausible",
value: "plausible",
label: "Plausible",
},
vercel: {
key: "vercel",
value: "vercel",
label: "Vercel",
},
netlify: {
key: "netlify",
value: "netlify",
label: "Netlify",
},
} satisfies {
[Key in OptionKey]: {
key: Key
Expand Down Expand Up @@ -150,6 +168,11 @@ const continuousIntegrationOptionKeys = [
const serverStateManagementLibraryOptionKeys = [
optionKeys.reactQuery,
] satisfies OptionKey[]
const analyticsOptionKeys = [optionKeys.plausible] satisfies OptionKey[]
const deploymentOptionKeys = [
optionKeys.vercel,
optionKeys.netlify,
] satisfies OptionKey[]

type ProjectName = string
type PackageManager = (typeof packageManagerOptionKeys)[number]
Expand All @@ -162,6 +185,9 @@ type Animation = (typeof animationOptionKeys)[number]
type ContinuousIntegration = (typeof continuousIntegrationOptionKeys)[number]
type ServerStateManagementLibrary =
(typeof serverStateManagementLibraryOptionKeys)[number]
type Analytics = (typeof analyticsOptionKeys)[number]
type Deployment = (typeof deploymentOptionKeys)[number]

type TechnologiesFormData = {
projectName: ProjectName
packageManager: PackageManager
Expand All @@ -173,6 +199,8 @@ type TechnologiesFormData = {
animation: Animation[]
continuousIntegration: ContinuousIntegration[]
serverStateManagementLibraries: ServerStateManagementLibrary[]
analytics: Analytics[]
deployment: Deployment[]
}
const defaultFormData: TechnologiesFormData = {
projectName: "my-app",
Expand All @@ -185,6 +213,8 @@ const defaultFormData: TechnologiesFormData = {
animation: [optionKeys.framerMotion],
continuousIntegration: [optionKeys.githubActions],
serverStateManagementLibraries: [optionKeys.reactQuery],
analytics: [],
deployment: [optionKeys.vercel],
}
const formDataKeys = objectToKeyToKeyMap(defaultFormData)

Expand All @@ -201,6 +231,8 @@ const categoryLabels = {
animation: "Animation",
continuousIntegration: "Continuous Integration",
serverStateManagementLibraries: "Server State Management",
analytics: "Analytics",
deployment: "Deployment",
} as const

export const TechnologiesForm: React.FC = () => {
Expand All @@ -220,7 +252,7 @@ export const TechnologiesForm: React.FC = () => {
formData
) => {
const calculateCommand = (formData: TechnologiesFormData) => {
const args = ["npx", "create-next-stack@0.2.7"]
const args = ["npx", "create-next-stack@0.2.8"]

args.push(`--package-manager=${options[formData.packageManager].value}`)
args.push(`--styling=${options[formData.styling].value}`)
Expand All @@ -237,6 +269,8 @@ export const TechnologiesForm: React.FC = () => {
pushArgs(formData.animation)
pushArgs(formData.continuousIntegration)
pushArgs(formData.serverStateManagementLibraries)
pushArgs(formData.analytics)
pushArgs(formData.deployment)

const projectNameSegments = formData.projectName.split("/")
const lastPartOfProjectName = projectNameSegments.pop()!
Expand All @@ -257,7 +291,9 @@ export const TechnologiesForm: React.FC = () => {
| "iconLibraries"
| "animation"
| "continuousIntegration"
| "serverStateManagementLibraries",
| "serverStateManagementLibraries"
| "analytics"
| "deployment",
optionKeys: Array<keyof typeof options>,
validators?: {
[key in keyof typeof options]?: Array<{
Expand Down Expand Up @@ -409,6 +445,16 @@ export const TechnologiesForm: React.FC = () => {
serverStateManagementLibraryOptionKeys
)}
</Flex>

<Flex direction="column" gap="4">
<Heading as="h3" size="md">
{categoryLabels.analytics}
</Heading>
{CheckboxesOfOptionKeys(
formDataKeys.analytics,
analyticsOptionKeys
)}
</Flex>
</Flex>

<Flex direction="column" gap="8" flexBasis="100%">
Expand Down Expand Up @@ -543,6 +589,16 @@ export const TechnologiesForm: React.FC = () => {
continuousIntegrationOptionKeys
)}
</Flex>

<Flex direction="column" gap="4">
<Heading as="h3" size="md">
{categoryLabels.deployment}
</Heading>
{CheckboxesOfOptionKeys(
formDataKeys.deployment,
deploymentOptionKeys
)}
</Flex>
</Flex>
</Flex>

Expand Down
Loading