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

How to build an invoicing app with Next.js, Redux, and jspdf #1374

Closed
1 task done
OmaJuliet opened this issue Apr 24, 2024 · 15 comments
Closed
1 task done

How to build an invoicing app with Next.js, Redux, and jspdf #1374

OmaJuliet opened this issue Apr 24, 2024 · 15 comments
Assignees
Labels

Comments

@OmaJuliet
Copy link

What is your article idea?

This article will be a detailed guide on how to build an interactive invoicing app step by step using technologies like Next.js, Redux for state management, and jspdf to make the invoices downloadable.

What are the objectives of your article?

Introduction to Next.js and Redux:

  • Brief overview of Next.js and Redux

Setting up the Next.js project:

  • Creating the Next.js Project
  • Step-by-step guide to setting up a Next.js project
  • Installing necessary dependencies and configuring the development environment
  • Integrating Redux into the Next.js app
  • Configuring Redux store in the Next.js application

Implementing functionality with Redux:

  • Building components for creating, editing, and deleting invoices
  • Implementing Redux actions and reducers to handle invoice data
  • Integrating form validation and error handling

Integrating jspdf for PDF invoicing:

  • Overview of the jspdf library for generating PDF documents in JavaScript
  • Installing and configuring jspdf library in the Nextjs project
  • Implementing the logic to convert the invoice data into a PDF document
  • Customizing PDF layout
  • Adding a download button to each invoice

Conclusion

  • Overview and a quick recap of the article

What is your expertise as a developer or writer?

Beginner

What type of post is this?

Tutorial

Terms & Conditions

  • I have read the Write for the Community program guidelines.
@Theodore-Kelechukwu-Onyejiaku
Copy link
Collaborator

Hi @OmaJuliet ,

This looks good. Could we please use Strapi as the backend to store all invoice data?

Please let me know if you have any questions.

@OmaJuliet
Copy link
Author

Alright, I'll use Strapi for the backend

@Theodore-Kelechukwu-Onyejiaku
Copy link
Collaborator

@OmaJuliet , thank you. I can't wait to see your contribution! 🥳

@OmaJuliet
Copy link
Author

Hello @Theodore-Kelechukwu-Onyejiaku , for this tutorial, you said I should use Strapi as the backend storage for the invoice data. The invoice data is already being managed and stored in the Redux store, so should I use one instead of the two?

@Theodore-Kelechukwu-Onyejiaku
Copy link
Collaborator

Hi @OmaJuliet ,

I would advise you use Strapi to store the data for historical reasons. You can use the both of them, but for simplicity, I would suggest you use Strapi alone. Store your data in Strapi so they can be accessed anytime as the redux store is for complex state management and not a database as well.

Please let me know if you have any other questions. Thank you!

@OmaJuliet
Copy link
Author

Great @Theodore-Kelechukwu-Onyejiaku . Thanks.

@OmaJuliet
Copy link
Author

Hi @Theodore-Kelechukwu-Onyejiaku
This article is ready for review. Here's the draft link: https://hackmd.io/@Juliet-Oma/SkQt8yXfC

@Theodore-Kelechukwu-Onyejiaku
Copy link
Collaborator

Hi @OmaJuliet ,

Thank you for your contribution! 🚀. I will add this to the review backlog. Meanwhile, I checked the demo videos. Is it possible you provide a GIFs of them since their durations are not long. If Hackmd limits the size upload, you can share them here. Just make sure they are clear enough and are viewable. That would be much appreciated.

Thank you.

Please do well to join our Discord community channel "#Write for the Community" if you haven't, https://discord.gg/invite/strapi. 😊

@Theodore-Kelechukwu-Onyejiaku Theodore-Kelechukwu-Onyejiaku added In Review Article is in review and removed In progress Tutorial being created labels May 20, 2024
@OmaJuliet
Copy link
Author

OmaJuliet commented May 20, 2024

Hi @Theodore-Kelechukwu-Onyejiaku I planned to use Giphy to make the videos into GIF but it wasn't clear. The GIF came out very blurry.
I've joined the Discord channel

@OmaJuliet
Copy link
Author

OmaJuliet commented May 20, 2024

@Theodore-Kelechukwu-Onyejiaku
I've created the GIFs and embedded them in the article. Check if they're ok.

Here are the links for them:
https://media.giphy.com/media/UTfX3ebXfSw48oClNz/giphy.gif
https://media.giphy.com/media/WF3SwxCvc8LCxuTIhg/giphy.gif

@Theodore-Kelechukwu-Onyejiaku
Copy link
Collaborator

Thank you @OmaJuliet.

Could you please provide clear ones.They look quite blurry. @OmaJuliet .

@OmaJuliet
Copy link
Author

Yeah, I will @Theodore-Kelechukwu-Onyejiaku

@Theodore-Kelechukwu-Onyejiaku
Copy link
Collaborator

Thank you @OmaJuliet

@Theodore-Kelechukwu-Onyejiaku
Copy link
Collaborator

Hi @OmaJuliet ,

Thanks for your contribution. I left some comments in your draft. Please review it. Thank you!

@OmaJuliet
Copy link
Author

All done @Theodore-Kelechukwu-Onyejiaku

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants