diff --git a/src/app/home/homeSectionLandingImage.jsx b/src/app/home/homeSectionLandingImage.jsx
index 3b79da90..7cbc4b20 100644
--- a/src/app/home/homeSectionLandingImage.jsx
+++ b/src/app/home/homeSectionLandingImage.jsx
@@ -1,4 +1,4 @@
-import Link from "next/link";
+import Button from "@/components/Buttons";
/**
* Home projects section.
@@ -19,8 +19,8 @@ export default function HomeSectionLandingImage() {
better future!
- Get Started
- View Projects
+
+
diff --git a/src/app/home/homeSectionProjects.jsx b/src/app/home/homeSectionProjects.jsx
index e9a7965e..e08b6585 100644
--- a/src/app/home/homeSectionProjects.jsx
+++ b/src/app/home/homeSectionProjects.jsx
@@ -1,8 +1,8 @@
'use client'
import 'keen-slider/keen-slider.min.css'
import {useKeenSlider} from 'keen-slider/react'
-import React from 'react'
-import Link from 'next/link'
+import { useState } from 'react';
+import Button from '@/components/Buttons';
/**
* Home projects section.
@@ -10,8 +10,8 @@ import Link from 'next/link'
*/
export default function HomeSectionProjects({sectionType}) {
- const [currentSlide, setCurrentSlide] = React.useState(0)
- const [loaded, setLoaded] = React.useState(false)
+ const [currentSlide, setCurrentSlide] = useState(0)
+ const [loaded, setLoaded] = useState(false)
const [sliderRef, instanceRef] = useKeenSlider({
initial: 0,
slideChanged(slider) {
@@ -36,7 +36,7 @@ export default function HomeSectionProjects({sectionType}) {
our open-source tech and collaboration drive innovation
for transparent, efficient, engaged local governance.
- Find Projects
+
diff --git a/src/app/home/homeSectionServices.jsx b/src/app/home/homeSectionServices.jsx
index a33dff77..3751af8c 100644
--- a/src/app/home/homeSectionServices.jsx
+++ b/src/app/home/homeSectionServices.jsx
@@ -1,4 +1,4 @@
-import Link from "next/link";
+import Button from "@/components/Buttons";
/**
* Home services section.
@@ -21,9 +21,7 @@ export default function HomeSectionServices({sectionType}) {
projects at our meetups. Join us to be a part of a vibrant community
dedicated to positive change through technology.
-
- Visit Meetup
-
+
@@ -34,7 +32,7 @@ export default function HomeSectionServices({sectionType}) {
real challenges and enhance our city. Be part of a dynamic team working
on solutions that make a difference.
- See Our Projects
+
@@ -45,7 +43,7 @@ export default function HomeSectionServices({sectionType}) {
join forces with our community of innovators to bring your vision to
life, driving positive change in Sacramento.
- Pitch a Project
+
diff --git a/src/app/projects/[project]/singleProjectsContribute.jsx b/src/app/projects/[project]/singleProjectsContribute.jsx
index 2ed75ad5..a7dbfbf9 100644
--- a/src/app/projects/[project]/singleProjectsContribute.jsx
+++ b/src/app/projects/[project]/singleProjectsContribute.jsx
@@ -1,3 +1,5 @@
+import Button from "@/components/Buttons";
+
export default function SingleProjectsContribute({ sectionType, contributeAs, setContributeAs }) {
return (
@@ -10,10 +12,10 @@ export default function SingleProjectsContribute({ sectionType, contributeAs, se
Get Involved As
-
-
-
+
);
-}
+}
\ No newline at end of file
diff --git a/src/app/projects/[project]/singleProjectsSectionStart.jsx b/src/app/projects/[project]/singleProjectsSectionStart.jsx
index 8683efac..a4793cc6 100644
--- a/src/app/projects/[project]/singleProjectsSectionStart.jsx
+++ b/src/app/projects/[project]/singleProjectsSectionStart.jsx
@@ -1,5 +1,5 @@
-import Link from "next/link";
import moment from "moment";
+import Button from "@/components/Buttons";
/**
* Single project start section.
@@ -25,18 +25,10 @@ export default function SingleProjectsSectionStart({ sectionType, data }) {
{data.meta.description}
Last Updated: {`${moment(data.updated_at).format("ddd MMM D, H:mma")}`}
-
- View Source Code
-
-
- Get Started
-
+
+
);
-}
+}
\ No newline at end of file
diff --git a/src/app/projects/projectCard.jsx b/src/app/projects/projectCard.jsx
index 8039fcb4..92b00bf7 100644
--- a/src/app/projects/projectCard.jsx
+++ b/src/app/projects/projectCard.jsx
@@ -1,3 +1,5 @@
+import Button from "@/components/Buttons";
+
/**
* Projects start section.
* @returns {JSX.Element}
@@ -33,12 +35,8 @@ export default function ProjectCard({
Last Updated: {lastUpdatedTimestamp.format("ddd MMM D, H:mma")}
About
From 9a7934cc1b0169595dc48c3d10cb9e5f05f90423 Mon Sep 17 00:00:00 2001
From: Brian Sims
Date: Wed, 10 Jul 2024 19:13:19 -0700
Subject: [PATCH 04/12] Added href to project form link
---
src/app/pitch/pitchSectionInstructions.jsx | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/app/pitch/pitchSectionInstructions.jsx b/src/app/pitch/pitchSectionInstructions.jsx
index ddddf400..e6686f1e 100644
--- a/src/app/pitch/pitchSectionInstructions.jsx
+++ b/src/app/pitch/pitchSectionInstructions.jsx
@@ -57,7 +57,7 @@ export default function PitchSectionInstructions({sectionType}) {
Complete Project Form
- Fill out a Project Form to formally propose your idea.
+ Fill out a Project Form to formally propose your idea.
After submitting, please allow 1-2 weeks for our team to review your project proposal.
We'll carefully assess its alignment with our mission and guidelines.
During this time, someone from our team will reach out to discuss your project further.
From 6c460a5868264db30d24f50f410bba120adfa5dc Mon Sep 17 00:00:00 2001
From: Brian Sims
Date: Wed, 24 Jul 2024 10:06:34 -0700
Subject: [PATCH 05/12] Fixed navigation to single project page to point to top
of page
---
src/app/projects/[project]/singleProjectsSectionStart.jsx | 2 +-
src/app/projects/projectsCardsContainer.jsx | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/app/projects/[project]/singleProjectsSectionStart.jsx b/src/app/projects/[project]/singleProjectsSectionStart.jsx
index a4793cc6..c86916e9 100644
--- a/src/app/projects/[project]/singleProjectsSectionStart.jsx
+++ b/src/app/projects/[project]/singleProjectsSectionStart.jsx
@@ -8,7 +8,7 @@ import Button from "@/components/Buttons";
*/
export default function SingleProjectsSectionStart({ sectionType, data }) {
return (
-
+
Date: Wed, 24 Jul 2024 13:10:28 -0700
Subject: [PATCH 06/12] Added sticky navbar styling to project-link-container
in single project page, as well as scroll-margin-top to sections for clean in
page navigation.
---
styles/pages/projects.scss | 20 +++++++++++++++++---
1 file changed, 17 insertions(+), 3 deletions(-)
diff --git a/styles/pages/projects.scss b/styles/pages/projects.scss
index 6c22d956..0c5058b2 100644
--- a/styles/pages/projects.scss
+++ b/styles/pages/projects.scss
@@ -670,6 +670,7 @@ details p {
/* SingleProjectsLinks */
.project-link-container {
+ background: $neutral-900;
display: flex;
flex-direction: column;
gap: 24px;
@@ -678,6 +679,9 @@ details p {
padding: 16px 0;
@media (min-width: $screen-xl) {
+ position: sticky;
+ top: 84px;
+ z-index: 5;
padding: 16px 20px;
flex-direction: row;
gap: 46px;
@@ -697,6 +701,7 @@ details p {
@media (min-width: $screen-xl) {
padding-top: 58px;
+ scroll-margin-top: 32px;
}
}
@@ -721,6 +726,10 @@ details p {
.project-screenshots-container {
padding: 20px 0 42px 0;
+
+ @media (min-width: $screen-xl) {
+ scroll-margin-top: 70px;
+ }
}
.project-screenshots-container .project-section-paragraph {
@@ -763,8 +772,11 @@ details p {
/* SingleProjectsRoadmap */
.project-roadmap-container {
- margin-top: 20px;
- padding: 48px 0 20px 0;
+ padding: 68px 0 20px 0;
+
+ @media (min-width: $screen-xl) {
+ scroll-margin-top: 22px;
+ }
}
.project-roadmap-container .project-section-paragraph {
@@ -850,6 +862,7 @@ details p {
@media (min-width: $screen-xl) {
padding: 54px 0 32px 0;
+ scroll-margin-top: 36px;
}
}
@@ -882,6 +895,7 @@ details p {
@media (min-width: $screen-xl) {
padding: 48px 0;
+ scroll-margin-top: 42px;
}
}
@@ -902,7 +916,7 @@ details p {
@media (min-width: $screen-xl) {
padding: 48px 0;
- grid-template-columns: 2fr 1fr;
+ scroll-margin-top: 42px;
}
}
From d7427123db35dff7a442a1d62f2cc9ac9bfafd17 Mon Sep 17 00:00:00 2001
From: Brian Sims
Date: Wed, 24 Jul 2024 17:06:31 -0700
Subject: [PATCH 07/12] Created Slider component and added it to single project
page screenshots section mobile version to match figma design.
---
.../[project]/singleProjectsScreenshots.jsx | 7 +++-
src/components/ui/Slider.jsx | 42 +++++++++++++++++++
src/components/ui/index.js | 1 +
styles/abstracts/variables.scss | 2 +
styles/pages/projects.scss | 31 +++++++++++---
5 files changed, 76 insertions(+), 7 deletions(-)
create mode 100644 src/components/ui/Slider.jsx
create mode 100644 src/components/ui/index.js
diff --git a/src/app/projects/[project]/singleProjectsScreenshots.jsx b/src/app/projects/[project]/singleProjectsScreenshots.jsx
index 7cfd2412..a8e01372 100644
--- a/src/app/projects/[project]/singleProjectsScreenshots.jsx
+++ b/src/app/projects/[project]/singleProjectsScreenshots.jsx
@@ -1,13 +1,15 @@
+import { Slider } from "@/components/ui";
+
export default function SingleProjectsScreenshots({ sectionType, data }) {
let shownImages = data.meta.screenshots.map((screenshot) => (
));
for (let i = shownImages.length; i < 6; i++) {
- shownImages.push();
+ shownImages.push();
}
@@ -23,6 +25,7 @@ export default function SingleProjectsScreenshots({ sectionType, data }) {
{shownImages}
+ {shownImages}
);
}
diff --git a/src/components/ui/Slider.jsx b/src/components/ui/Slider.jsx
new file mode 100644
index 00000000..ce2a855f
--- /dev/null
+++ b/src/components/ui/Slider.jsx
@@ -0,0 +1,42 @@
+import { useState } from 'react';
+import 'keen-slider/keen-slider.min.css';
+import { useKeenSlider } from 'keen-slider/react'; // import from 'keen-slider/react.es' for to get an ES module
+
+export default function Slider ({containerClass, children}) {
+ const [currentSlide, setCurrentSlide] = useState(0);
+ const [loaded, setLoaded] = useState(false);
+ const [sliderRef, instanceRef] = useKeenSlider({
+ initial: 0,
+ slideChanged(slider) {
+ setCurrentSlide(slider.track.details.rel)
+ },
+ created() {
+ setLoaded(true)
+ },
+ });
+
+ return (
+
- )
-}
\ No newline at end of file
diff --git a/src/app/get-started/getStartedSectionInstructions.jsx b/src/app/get-started/getStartedSectionInstructions.jsx
deleted file mode 100644
index 1a48c3f4..00000000
--- a/src/app/get-started/getStartedSectionInstructions.jsx
+++ /dev/null
@@ -1,70 +0,0 @@
-import instructions from './instructions.json'
-import Link from 'next/link'
-
-/**
- * Get started instructions section.
- * @returns {JSX.Element}
- */
-export default function GetStartedSectionInstructions({sectionType}) {
- return (
-
-
-
-
-
GETTING STARTED
-
- Steps to Volunteer
-
-
-
- Discover how you can become a valued volunteer at Open Sacramento.
- Follow these simple steps to join our community of technologists, developers,
- and civic-minded individuals dedicated to driving positive change through technology and collaboration.
-
-
- )
-}
\ No newline at end of file
diff --git a/src/app/get-started/getStartedSectionLanding.jsx b/src/app/get-started/getStartedSectionLanding.jsx
deleted file mode 100644
index 20afc2bb..00000000
--- a/src/app/get-started/getStartedSectionLanding.jsx
+++ /dev/null
@@ -1,27 +0,0 @@
-/**
- * Get started landing section.
- * @returns {JSX.Element}
- */
-export default function GetStartedSectionLanding({sectionType}) {
- return (
-
-
-
GET STARTED
-
- Ready to Volunteer with Open Sacramento
-
-
-
-
-
- We're thrilled that you're eager to join our community of civic-minded individuals and make a positive impact
- on Sacramento. Volunteering with Open Sacramento is a rewarding experience that allows you to use your
- skills
- for the betterment of our city. Whether you're a designer, developer, or anyone else passionate
- about civic tech, you'll find step-by-step instructions below to help you get started
- on your journey of civic tech and community empowerment.
-
-
-
- )
-}
\ No newline at end of file
diff --git a/src/app/pitch/pitch.jsx b/src/app/pitch/pitch.jsx
deleted file mode 100644
index 1a1540f2..00000000
--- a/src/app/pitch/pitch.jsx
+++ /dev/null
@@ -1,24 +0,0 @@
-import PitchSectionLanding from './pitchSectionLanding'
-import PitchSectionInstructions from './pitchSectionInstructions'
-
-/**
- * Section type. Displays light or dark themes.
- * @type {{light: string, dark: string}}
- */
-export const SectionType = {
- light: 'light',
- dark: 'dark',
-}
-
-/**
- * Page for information about how to pitch a project.
- * @returns {JSX.Element}
- */
-export default function Pitch() {
- return (
-
- Ready to turn your civic tech idea into reality?
- Follow these simple steps to pitch your project idea to Open Sacramento.
-
-
-
-
-
-
-
-
Check Eligibility
-
- Before presenting your project idea, it's crucial to verify
- its alignment with our mission and principles.
- Please review the following conditions to ensure your project falls within our scope:
-
-
Open Source
-
Free to Distribute
-
Non-Profit
-
Community-Benefiting
-
- These criteria will help ensure your project is in harmony with our mission and objectives.
-
-
-
-
-
-
-
-
Review our Code of Conduct
-
- Familiarize yourself with our Code of Conduct, which outlines the principles and expectations
- guiding our community. We value respectful and inclusive interactions to create a positive
- environment for everyone. Please read and understand our
- guidelines for a positive experience.
-
-
-
-
-
-
-
-
Complete Project Form
-
- Fill out a Project Form to formally propose your idea.
- After submitting, please allow 1-2 weeks for our team to review your project proposal.
- We'll carefully assess its alignment with our mission and guidelines.
- During this time, someone from our team will reach out to discuss your project further.
-
-
-
-
-
-
-
-
Attend Weekly Meetings (optional)
-
- For the fastest way to engage with our community and potentially pitch your project,
- consider attending our weekly meetings posted on Meetup. These meetings provide an excellent
- opportunity to connect with our team, discuss your project ideas,
- and explore collaborations within our community.
-
-
-
-
-
-
-
-
Await Decision
-
- After submitting your project form, please patiently wait for approval or notification of rejection.
- Once your project is approved, a team member will provide you with further directions and guidance
- to get started on your exciting journey with Open Sacramento!
-
-
- )
-}
\ No newline at end of file
diff --git a/src/app/pitch/pitchSectionLanding.jsx b/src/app/pitch/pitchSectionLanding.jsx
deleted file mode 100644
index fa15fc5a..00000000
--- a/src/app/pitch/pitchSectionLanding.jsx
+++ /dev/null
@@ -1,23 +0,0 @@
-/**
- * Pitch landing section.
- * @returns {JSX.Element}
- */
-export default function PitchSectionLanding({sectionType}) {
- return (
-
-
-
pitch a project
-
- Contribute Your Project Idea
-
-
-
-
-
- Share your innovative ideas and collaborate with our community to turn them into reality.
- Pitch your project to make a positive impact on Sacramento using technology and civic engagement.
-
-
-
- )
-}
\ No newline at end of file
From 040d77846bca733be822f70b5cd46ee8f84f01a9 Mon Sep 17 00:00:00 2001
From: natebass
Date: Sat, 3 Aug 2024 16:34:27 -0700
Subject: [PATCH 12/12] Remove files that were added unintentionally after
refactor.
---
src/components/AppFooter.jsx | 106 -----------------------------
styles/layout/general-section.scss | 13 ----
2 files changed, 119 deletions(-)
delete mode 100644 src/components/AppFooter.jsx
delete mode 100644 styles/layout/general-section.scss
diff --git a/src/components/AppFooter.jsx b/src/components/AppFooter.jsx
deleted file mode 100644
index 93b4e886..00000000
--- a/src/components/AppFooter.jsx
+++ /dev/null
@@ -1,106 +0,0 @@
-import Link from "next/link";
-
-/**
- * Default application footer.
- * @returns {JSX.Element}
- */
-export default function AppFooter() {
- return (
-
- );
-}
diff --git a/styles/layout/general-section.scss b/styles/layout/general-section.scss
deleted file mode 100644
index 25392a89..00000000
--- a/styles/layout/general-section.scss
+++ /dev/null
@@ -1,13 +0,0 @@
-.general-heading-underline::after {
- content: "";
- position: absolute;
- left: 0;
- right: 0;
- height: 1px;
- width: 43px;
- border-bottom: 4px solid $neutral-900;
- }
-
- .general-underline-alt::after {
- border-bottom: 4px solid $neutral-50;
- }
\ No newline at end of file