feedgen

package module
v0.0.0-...-9191452 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 22, 2020 License: MIT Imports: 2 Imported by: 0

README

FeedGen - RSS feed for services

📫 Get RSS feed for services without it

👨🏻‍💻 Easily add new services

🧐 Read content without going to the service

License

FeedGen generates RSS feeds for services that don't actually have them. This enables the user to get updates on website/service content without checking it via clients or websites. For example, you can get updates on Instagram posts from public profiles or new from a university website without checking it.

Usage

# Go to server dir
cd server
# Build the server
go build
# Run it
./server

Author

Dušan Simić <dusan.simic1810@gmail.com>

🤝 Contributing

Contributions, issues and feature requests are welcome! Feel free to check issues page.

📝 License

Copyright © 2020 Dušan Simić.
This project is MIT licensed.

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Author

type Author struct {
	Name  string `xml:"name"`
	Email string `xml:"email,omitempty"`
}

type Content

type Content struct {
	Type string `xml:"type,attr"`
	Body string `xml:",chardata"`
}

type Contenter

type Contenter interface {
	Title() string
	Links() []string
	ID() string
	Updated() time.Time
	Summary() string
	Content() string
	Author() string
}

Contenter is a type that includes as single peice of contnet from a source. Information can be returned using getter methods.

type Entry

type Entry struct {
	Title   string  `xml:"title"`
	Links   []Link  `xml:"link"`
	ID      string  `xml:"id"`
	Updated string  `xml:"updated"`
	Summary string  `xml:"summary"`
	Content Content `xml:"content"`
	Author  Author  `xml:"author"`
}

type Feed

type Feed struct {
	XMLName  xml.Name `xml:"feed"`
	Title    string   `xml:"title"`
	Subtitle string   `xml:"subtitle"`
	// Icon     string   `xml:"icon,omitempty"`
	Image   Image   `xml:"image,omitempty"`
	Links   []Link  `xml:"link"`
	ID      string  `xml:"id"`
	Updated string  `xml:"updated"`
	Entries []Entry `xml:"entry"`
}

type Feeder

type Feeder interface {
	Title() string
	Subtitle() string
	Icon() string
	Links() []Link
	ID() string
	Updated() time.Time
	Entries() []Contenter
}

type Grabber

type Grabber interface {
	Grab() Feeder
}

Grabber is a type that implements procedures from grabbing contnent from sources.

type Image

type Image struct {
	Title string `xml:"title"`
	URL   string `xml:"url"`
	Link  string `xml:"link"`
}
type Link struct {
	Href string `xml:"href,attr"`
	Rel  string `xml:"rel,attr,omitempty"`
	Type string `xml:"type,attr,omitempty"`
}

Link stores data about an XML link

type Sourcer

type Sourcer interface{}

Sourcer is a type that contains information and configuration needed for getting data from it.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL