|
1 | 1 | # Pod |
2 | 2 |
|
3 | | -TODO: create pod description |
| 3 | +Simple CLI to manage podcasts. |
4 | 4 |
|
5 | 5 | ## Installation |
6 | 6 |
|
7 | | -Install the gem and add to the application's Gemfile by executing: |
| 7 | +Pod is a Ruby gem published on RubyGems, so you can install running: |
8 | 8 |
|
9 | | - $ bundle add pod |
| 9 | +```bash |
| 10 | +$ gem install pod |
| 11 | +``` |
10 | 12 |
|
11 | | -If bundler is not being used to manage dependencies, install the gem by executing: |
| 13 | +## Usage |
12 | 14 |
|
13 | | - $ gem install pod |
| 15 | +### Initialization |
14 | 16 |
|
15 | | -## Usage |
| 17 | +```bash |
| 18 | +$ pod init |
| 19 | +``` |
16 | 20 |
|
17 | | -TODO: Write usage instructions here |
| 21 | +### Adding a podcast |
18 | 22 |
|
19 | | -## Development |
| 23 | +```bash |
| 24 | +$ pod add ./path/to/rss.xml |
| 25 | +$ pod add https://podcast.com/feed.xml |
| 26 | +``` |
20 | 27 |
|
21 | | -After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment. |
| 28 | +### Listing podcasts |
| 29 | + |
| 30 | +```bash |
| 31 | +$ pod podcasts |
| 32 | +$ pod podcasts --fields=id name |
| 33 | +``` |
| 34 | + |
| 35 | +### Listing episodes |
| 36 | + |
| 37 | +```bash |
| 38 | +$ pod episodes PODCAST_ID |
| 39 | +$ pod podcasts PODCAST_ID --fields=id title duration |
| 40 | +$ pod podcasts PODCAST_ID --order-by=duration |
| 41 | +``` |
| 42 | + |
| 43 | +### Opening an episode |
22 | 44 |
|
23 | | -### TODO List |
24 | | -- [x] Input interpretation |
25 | | - - [x] Create abstraction for `Open3` |
26 | | -- [x] `pod version/-v/--version` command |
27 | | -- [ ] `pod init` command |
28 | | -- [ ] Setup linter |
29 | | -- [ ] Setup lefthook |
30 | | -- [ ] Setup CI |
| 45 | +```bash |
| 46 | +$ pod open EPISODE_ID |
| 47 | +$ pod open EPISODE_ID --browser=firefox |
| 48 | +$ pod open EPISODE_ID --archive |
| 49 | +``` |
31 | 50 |
|
32 | | -### File structure |
| 51 | +### Archiving an episode |
33 | 52 |
|
| 53 | +```bash |
| 54 | +$ pod archive EPISODE_ID |
34 | 55 | ``` |
35 | | -. |
36 | | -└── lib/ |
37 | | - ├── pod/ |
38 | | - │ ├── commands/ |
39 | | - │ │ ├── init/ |
40 | | - │ │ │ ├── runner.rb |
41 | | - │ │ │ └── output.rb |
42 | | - │ │ ├── add/ |
43 | | - │ │ │ ├── runner.rb |
44 | | - │ │ │ └── output.rb |
45 | | - │ │ ├── archive/ |
46 | | - │ │ │ ├── runner.rb |
47 | | - │ │ │ └── output.rb |
48 | | - │ │ └── ... |
49 | | - │ ├── infrastructure/ |
50 | | - │ │ ├── feed_parser.rb |
51 | | - │ │ ├── shell_interface.rb |
52 | | - │ │ ├── dto.rb |
53 | | - │ │ ├── storage.rb |
54 | | - │ │ └── ... |
55 | | - │ └── cli.rb |
56 | | - └── pod.rb |
| 56 | + |
| 57 | +### Dearchiving an episode |
| 58 | + |
| 59 | +```bash |
| 60 | +$ pod dearchive EPISODE_ID |
57 | 61 | ``` |
58 | 62 |
|
| 63 | +### Synchronizing a podcast |
| 64 | + |
| 65 | +```bash |
| 66 | +$ pod sync PODCAST_ID |
| 67 | +``` |
| 68 | + |
| 69 | +### Updating the podcast |
| 70 | + |
| 71 | +```bash |
| 72 | +$ pod update PODCAST_ID --feed=https://newfeed.com/feed.xml |
| 73 | +``` |
| 74 | + |
| 75 | +## Development |
| 76 | + |
| 77 | +After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment. |
| 78 | + |
59 | 79 | ## Contributing |
60 | 80 |
|
61 | 81 | Bug reports and pull requests are welcome on GitHub at https://github.com/gustavothecoder/pod. |
|
0 commit comments